# Path to access.log & error.log
access_log /var/log/nginx/access.log main;
error_log /var/log/nginx/error.log warn;
sendfile on;
keepalive_timeout 65;
gzip on;
upstream backend {
# must match the target service name
server wordpress:80;
}
server {
listen 80;
location / {
# $http_host is the host name that users seen on the browser URL
# and it equals to `HTTP_HOST` request header.
proxy_set_header Host $http_host;
# You have to change this according to your setup.
proxy_pass http://wordpress;
# Modify `Location` of 301 or 302 HTTP response, so
# that the browser will follow the correct location.
proxy_redirect ~^http://[^/]*/(.*) http://$http_host/$1;
}
}
1.[compose.yml]
services:
db: image: mysql:latest container_name: db environment: MYSQL_ROOT_PASSWORD: User20user20 MYSQL_DATABASE: user20db MYSQL_USER: user20 MYSQL_PASSWORD: user20user20 volumes:
wordpress:/var/www/html healthcheck: test: [ 'CMD-SHELL','curl -f http://localhost:80 || exit 1', ] interval: 30s timeout: 10s retries: 3
web: image: nginx container_name: nginx_user20 volumes:
volumes: db: wordpress:
2.[nginx.conf] user nginx; worker_processes 1;
error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid;
events { worker_connections 1024; }
http { log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"';
}