首页 > 解决方案 > 用于内部/外部 docker-compose 的 Nginx 上游服务器

问题描述

我想要一个 Nginx 代理一个可以在 docker-compose 内部或外部作为一个简单过程运行的服务。

http {

    upstream web {
        server web:80; # when running in Docker-Compose
        server 127.0.0.1:80; # when running outside
    }

    server {
        listen 80;

        location /web/ {
            proxy_pass http://web;
            proxy_set_header Host $host;
        }
    }
}

但是当试图在 docker-compose 之外运行它时,我得到一个主机web无法解析的错误。我知道 nginx 能够解析上游服务器和启动时刻是一个限制,但是还有其他方法可以实现吗?

谢谢

标签: nginxdocker-composenginx-reverse-proxy

解决方案


我最终通过使用Dockerhostdocker 映像并将 的值替换proxy_pass为 nginx docker 启动命令的一部分来解决这个问题。


推荐阅读