У меня есть сервер, который запускает ssl (certbot) nginx и направляет весь трафик на порт 5555, где работает мой nginx-прокси.Я пытаюсь заставить его направить весь мой трафик к соответствующим службам.
Вот мои настройки docker-compose:
nginx-proxy:
container_name: nginx-proxy
image: jwilder/nginx-proxy
ports:
- '5555:80'
networks:
app_net:
ipv4_address: 172.26.111.111 (from subnet 0/24)
environment:
- VIRTUAL_PORT=5555
volumes:
- /var/run/docker.sock:/tmp/docker.sock:ro
- ./nginx/prod/proxy.conf:/etc/nginx/conf.d/proxy.conf:ro
text-rewriter-service:
container_name: text-rewriter-service
build:
context: ./text-rewriter-service
ports:
- '8001:8001'
networks:
app_net:
ipv4_address: 172.26.111.13
environment:
- APP_ENV=prod
- NODE_ENV=production
- PORT=8001
И мой файл nginx proxy.conf
server {
server_name localhost;
listen 80;
access_log /var/log/nginx/access.log;
listen [::]:80;
# text-rewriter-service
location ~* ^/graphql(/?)(.*)$ {
set $query $2;
proxy_pass http://172.26.111.13:8001$1$query$is_args$args;
}
}
nginx conf на сервере
server {
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name example.com www.example.com;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://0.0.0.0:5555;
}
listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
Я пробовал (и не смог):
IP с text-rewriter-service:8001
попытался изменить сервер на example.com
попытался использовать VIRTUAL_HOST и VIRTUAL_PORT в приложении
попытался удалить VIRTUAL_PORT из среды nginx
здесь вывод nginx www.example.com 172.26.111.1 - - [08/Dec/2018:01:18:19 +0000] "GET /graphql HTTP/1.0" 503 615 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36"
возможное решение, я не совсем понял, как приступить к работе : https://github.com/jwilder/nginx-proxy/issues/582
Я думаю, что это на сервере nginx proxy_header мне нужно изменить ??