问题描述
我目前在 Docker 上安装了 Jenkins,可以通过 localhost:8080 访问
但是,我希望它也可以与其他应用程序一起在端口 80 上运行。所以,我使用 Nginx 作为反向代理。
所以,我在 Nginx/conf.d 文件夹中设置了这个(我使用 Ubuntu 服务器 20.10)
upstream jenkins {
server 127.0.0.1:8080;
}
server {
listen 80 default;
listen [::]:80;
server_name 192.46.223.235; #linode VM for testing,I don't have domain name
access_log /var/log/Nginx/jenkins.access.log;
error_log /var/log/Nginx/jenkins.error.log;
proxy_buffers 16 64k;
proxy_buffer_size 128k;
location /jenkins {
proxy_pass http://127.0.0.1:8080 ;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
}
}
如果我在浏览器上打开
http://192.46.223.235/jenkins/
它会将我重定向到
http://192.46.223.235/login?from=%2Fjenkins%2F
什么都没有。
我必须手动输入才能进入 jenkins 页面
http://192.46.223.235/jenkins/login?from=%2F
但是,如果我只将 location / 而不是 location /jenkins 放在 conf 文件中。它会正常工作。
我是否遗漏了在 conf 文件中配置 Jenkins 反向代理的任何内容?谢谢!
我在 youtube 上使用本教程
https://www.youtube.com/watch?v=5R6XlvHG47U&ab_channel=OnlineTutorials
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)