docker将nginx反向代理组合到错误的容器
我有一个project server的docker将nginx反向代理组合到错误的容器,docker,nginx,docker-compose,Docker,Nginx,Docker Compose,我有一个project server的docker compose.yml文件。它包含一个mongo容器、nginx服务和一个面板 我必须为测试和主环境将我的服务和面板封装起来。首先我在测试上发布,然后在主环境上发布 在发布到mainnginx之后,转发测试请求,这就是问题所在 重新启动nginx可以解决问题,因此,在主环境上每次发布后,如何在不重新启动nginx的情况下永久解决问题 docker compose.yml: 版本:“3.7” 服务:主要mongo: 图片:mongo:4.2.3
docker compose.yml
文件。它包含一个mongo
容器、nginx
服务和一个面板
我必须为测试和主环境将我的服务和面板封装起来。首先我在测试上发布,然后在主环境上发布
在发布到mainnginx
之后,转发测试请求,这就是问题所在
重新启动nginx
可以解决问题,因此,在主环境上每次发布后,如何在不重新启动nginx
的情况下永久解决问题
docker compose.yml
:
版本:“3.7”
服务:主要mongo:
图片:mongo:4.2.3
集装箱名称:主mongo
卷数:
-mongodb:/data/db
-mongoconfig:/data/configdb
主要服务:
图片:项目
容器名称:主服务
重新启动:失败时
卷数:
-/视图:/project/视图
-/公共:/project/公共
取决于:
-主蒙戈
测试服务:
图片:test_项目
容器名称:测试服务
重新启动:失败时
卷数:
-/测试视图/视图:/project/view
-/测试视图/公共:/project/public
环境:
-ENV=测试
取决于:
-主蒙戈
测试面板:
图:测试面板
容器名称:测试面板
重新启动:失败时
环境:
-ENV=测试
取决于:
-主蒙戈
主面板:
图片:面板
容器名称:主面板
重新启动:失败时
取决于:
-主蒙戈
python_后端_测试:
图:python_后端_测试
容器名称:python\u后端\u测试
重新启动:失败时
卷数:
-/tmp:/tmp
nginx:
图片:nginx:1.17
容器名称:nginx
重新启动:失败时
端口:
- 80:80
卷数:
-/nginx:/etc/nginx/conf.d/
-/面板\前:/usr/共享/面板
取决于:
-主面板
-测试面板
-测试服务
-主要服务
卷:mongodb:mongoconfig:
nginx.conf
:
server {
listen 80;
listen [::]:80;
server_name domain.com;
location /api {
proxy_pass http://main_panel:3000;
}
location /account {
root /usr/share/panel/live;
try_files $uri $uri/ /index.html;
}
location / {
proxy_pass http://main_service:3000;
}
}
server {
listen 80;
listen [::]:80;
server_name test.domain.com;
location /netflix {
proxy_pass http://python_backend_test:5000;
}
location /api {
proxy_pass http://test_panel:3000;
}
location /account {
alias /usr/share/panel/test/;
try_files $uri $uri/ /index.html;
}
location / {
proxy_pass http://test_service:3000;
}
}
我也有同样的问题。
我解决了为docker compose创建网络的问题,为您的项目创建网络,并将所有容器添加到该网络中
更清楚的是,默认网络。默认网络可能会冲突。谢谢您的帮助。它成功了。