Привязка домена к докер контейнеру
Как правильно привязать домен к докер контейнеру? Есть контейнер приложения и контейнер nginx, а так же внешний nginx на сервере
docker-compose.yml:
web:
build:
context: ./blog
dockerfile: Dockerfile
container_name: blog_web_container
command: gunicorn blog.wsgi:application --bind 0.0.0.0:8000
volumes:
- static_volume:/home/app/web/static
- media_volume:/home/app/web/media
expose:
- 8000
env_file:
- ./.env
nginx:
build: ./nginx
container_name: blog_nginx_container
volumes:
- static_volume:/home/app/web/static
- media_volume:/home/app/web/media
ports:
- 8081:80
depends_on:
- web
entrypoint: "/bin/sh -c 'while :; do sleep 6h & wait $${!}; nginx -s reload; done & nginx -g \"daemon off;\"'"
nginx.conf в контейнере:
upstream app {
server web:8000;
}
server {
listen 80;
# server_name my_domain.ru www.my_domain.ru;
location / {
proxy_pass http://app;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_redirect off;
proxy_set_header Upgrade $http_upgrade ;
proxy_set_header Connection "upgrade";
}
location /static/ {
alias /home/app/web/static/;
}
location /media/ {
alias /home/app/web/media/;
}
}
настройки внешнего nginx my_domain.ru в sites-available
upstream blog {
server localhost:8081;
}
server {
listen 80;
server_name my_domain.ru www.my_domain.ru;
location / {
proxy_pass http://blog;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_redirect off;
}
}
При переходе на my_domain.ru - This site can’t be reached. При этом если перейти по server_ip_address:8081 все отображается корректно
Пробовал настроить все в nginx контейнере, и домен тогда работает, но при этом и при переходе по адресу сервера тоже работает, и при переходе на другой домен привязанному к этому серверу также открывается это приложение