nginx逆向代理背后的詹金斯

时间:2017-11-13 09:35:09

标签: docker jenkins nginx-reverse-proxy

我试图将jenkins容器(docker)放在nginx反向代理后面。它可以正常使用此路径https://example.com/,但当我将参数添加到路径https://example.com/jenkins时,它会返回502 Bad Gateway。

jenkins的docker容器就像这样运行 docker container run -d -p 127.0.0.1:8080:8080 jenkins / jenkins

这是我的代码,

server {
        listen 80;
        root /var/www/html;

        server_name schoolcloudy.com www.schoolcloudy.com;

        location / {
             proxy_pass http://localhost:8000;
        }

}

# Virtual Host configuration for example.com
upstream jenkins {
    server 127.0.0.1:8080;
}
server {
    listen 80;
    server_name jenkins;
    location /jenkins {
        proxy_pass http://jenkins;
        proxy_redirect  127.0.0.1:8080 https://schoolcloudy.com/jenkins;

    }
}

2 个答案:

答案 0 :(得分:0)

运行容器时,使用--network=host标志指定Jenkins容器的网络。这样,容器将能够与主机网络交互或在Nginx conf中明确使用容器的IP。

答案 1 :(得分:0)

在此类问题中的良好做法是使用官方文档: wiki.jenkins.io 我已经在Nginx反向代理后面配置了Jenkins几次,每次wiki都能正常工作。

P.S .:看起来您配置中的proxy_pass选项值应更改为http://127.0.0.1:8080