docker多重服务的静态文件问题,nginx

时间:2019-10-14 07:12:40

标签: docker nginx nginx-reverse-proxy

我在Nginx反向代理后面运行2个或更多容器/码头服务

/ app1 /->本地主机:4000
/ app2 /->本地主机:5000


问题是通过proxy_pass URL访问时不会加载静态文件,但是使用端口引用单独访问时静态文件可以正确运行。

nginx.conf

worker_processes 1;

events { worker_connections 1024; }

http {
    sendfile on;
    server {

        listen 80;
        location  /app1/ {
            proxy_pass http://localhost:5566/;
            proxy_set_header Host $host;
        }

        location /app2/ {
            proxy_pass http://localhost:9000/;
            #proxy_set_header Host $host;
            #proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Host $host:$server_port;
        }

        location /app3/ {
            proxy_set_header Host $host;
            proxy_pass http://localhost:5000/;
        }
    }
}

任何建议都会有很大帮助。
PS:创建子域是一种选择,但是我正在寻找其他替代方法(如果存在)。

1 个答案:

答案 0 :(得分:0)

每个docker是否独立运行?我认为docker-compose可以为您提供帮助。我想知道你是否有这样的问题。通过docker-compose,服务可以相互通信,请使用nginx代理应用

docker-compose config