【发布时间】:2019-12-26 05:37:52
【问题描述】:
尝试使用 docker 容器名称而不是 IP 地址将清漆添加到 nginx。
我尝试直接添加它set_real_ip_from site-varnish,但这不起作用。
尝试添加上游(下)并尝试set_real_ip_from varnish_backend但没有运气
upstream varnish_backend {
server site-varnish;
}
任何帮助将不胜感激。我已在当前工作配置下方添加以供参考。
upstream fastcgi_backend {
server site-fpm;
}
server {
listen 80;
listen 443 ssl;
server_name localhost;
location = /ping {
set_real_ip_from 192.168.176.2;
real_ip_header X-Forwarded-For;
access_log off;
allow 127.0.0.1;
deny all;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_pass fastcgi_backend;
}
}
docker-compose.yml
version: "2"
services:
site-varnish:
build:
context: ./etc/varnish/
ports:
- 80
networks:
- frontend
site-web:
build:
context: ./etc/nginx/
volumes_from:
- site-appdata
env_file:
- ./global.env
restart: always
networks:
- backend
- frontend
site-fpm:
build:
context: ./etc/7.2-fpm/
ports:
- 9000
volumes_from:
- site-appdata
env_file:
- ./global.env
networks:
- backend
site-appdata:
image: tianon/true
volumes:
- ./html:/var/www/html
networks:
frontend:
external:
name: webproxy
backend:
external:
name: backbone
【问题讨论】:
-
您是否在容器中同时使用 varnish 和 nginx?你在堆栈中使用了 docker-compose 吗?
-
是的,varnish 和 nginx 位于不同的容器中,并使用 docker-compose 作为堆栈。我尝试通过服务名称
site-varnish引用它们,但它不起作用。我确定我在某处犯了语法错误。 -
你应该在问题中提供 docker-compose
-
已添加。感谢您提供反馈,以便我可以提出更好的问题。
-
那是哪个 nginx 版本?主机名从
1.13.1启用