我想设置Jenkins仪表板,以供工程师团队访问,以便我不是唯一管理它的人。理想情况下,团队中的任何人都可以在jenkins.HOST.com
的浏览器中访问该URL,并将其定向到我创建的Jenkins仪表板。
我在配置中将jenkins url
设置为jenkins.HOST.com
,但是显然这还不够,我想避免使用nginx
隧道传输到我的localhost:8080
-但是如果这是最可行的选择,我可以这样做-我只是想知道是否有更好的方法。
我对使用Jenkins完全陌生,不胜感激!
答案 0 :(得分:1)
如您所料,使用nginx作为代理可能是管理Jenkins URL的最佳方法。仅在配置中进行设置是行不通的; Jenkins仍将在配置的端口上监听。端口默认为8080,但您可以尝试将其更改为端口80。此文章(过时)提供了How to configure Jenkins to run on port 80的一些详细信息。
我一直使用nginx选项,它从未失败过。您甚至可以获得能够添加SSL证书的好处。我建议使用let's encrypt。
这是我使用多年的配置,并使用您的jenkins.HOST.com
URL更新。只需照常安装Jenkins,修复任何selinux问题(将其禁用或配置nginx的访问权限即可访问本地主机端口8080),就可以了!
upstream jenkins {
server 127.0.0.1:8080;
}
server {
listen 80 default_server;
listen [::]:80;
server_name jenkins.HOST.com;
return 301 https://jenkins.HOST.com$request_uri;
}
server {
listen 443 ssl default_server;
listen [::]:443 ssl ipv6only=on;
server_name jenkins.HOST.com;
location / {
proxy_pass http://jenkins;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
}
ssl_certificate /etc/letsencrypt/live/jenkins.HOST.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/jenkins.HOST.com/privkey.pem;
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
}