Docker 詹金斯在nginx后面(码头工人)
我有一个nginx容器,具有以下位置和上游配置:Docker 詹金斯在nginx后面(码头工人),docker,nginx,jenkins,Docker,Nginx,Jenkins,我有一个nginx容器,具有以下位置和上游配置: upstream jenkins-docker { server jenkins:8080 fail_timeout=0; } # configuration file /etc/nginx/conf-files/jenkins-location.conf: location /jenkins/ { sendfile off; proxy_pass http://jenkins-docker; proxy_redi
upstream jenkins-docker {
server jenkins:8080 fail_timeout=0;
}
# configuration file /etc/nginx/conf-files/jenkins-location.conf:
location /jenkins/ {
sendfile off;
proxy_pass http://jenkins-docker;
proxy_redirect off;
proxy_http_version 1.1;
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 $scheme;
proxy_max_temp_file_size 0;
#this is the maximum upload size
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_request_buffering off; # Required for HTTP CLI commands in Jenkins > 2.54
}
詹金斯也在一个码头集装箱里。它们都连接到docker桥网络。在nginx容器内,我可以做:
curl jenkins:8080:
<html><head><meta http-equiv='refresh' content='1;url=/login?from=%2F'/><script>window.location.replace('/login?from=%2F');</script></head><body style='background-color:white; color:white;'>
Authentication required
<!--
You are authenticated as: anonymous
Groups that you are in:
Permission you need to have (but didn't): hudson.model.Hudson.Read
... which is implied by: hudson.security.Permission.GenericRead
... which is implied by: hudson.model.Hudson.Administer
-->
</body></html>
当我这样做时,我可以使用myIp/jenkis访问jenkins dashboar。但是当我点击菜单项时,我得到一个404命令,您还需要在jenkins安装上设置
--prefix
命令。您可以在jenkins.xml
配置文件中执行此操作,或者通过更改命令行参数以包括--prefix=/jenkins
参数可以在中看到。您还需要在jenkins安装上设置
--prefix
命令。您可以在jenkins.xml
配置文件中执行此操作,或者通过更改命令行参数以包括--prefix=/jenkins
参数可以在中看到,设置如下环境变量:
JENKINS\u OPTS=“--prefix=/JENKINS”
如果您使用的是docker compose,则如下所示:
environment:
- JENKINS_OPTS="--prefix=/jenkins"
设置如下所示的环境变量:
JENKINS\u OPTS=“--prefix=/JENKINS”
如果您使用的是docker compose,则如下所示:
environment:
- JENKINS_OPTS="--prefix=/jenkins"
您的意思是更改位置配置吗?如果您更改了任何配置,请尝试从jenkins的磁盘重新加载。是的,我在nginx中更改了位置配置。我编辑我的问题你能粘贴你在jenkins配置中更改的内容吗?在jenkins->管理jenkins->在“jenkins位置”下配置系统中,我将“jenkins URL”更改为我所更改的全部内容。你是说你更改了位置配置吗?如果你更改了任何配置,请尝试从jenkins磁盘重新加载我重新启动了jenkins。是的,我在nginx中更改了位置配置。我编辑我的问题你能粘贴你在jenkins配置中所做的更改吗?在jenkins->manage jenkins->Configure System的“jenkins Location”下,我将“jenkins URL”更改为这就是我更改的全部内容我在docker容器中如何执行此操作?我找不到我在docker的run命令中添加的jenkins.xml文件--env jenkins_ARGS=“--prefix=/jenkins”。但还是不行我在docker容器里是怎么做的?我找不到我在docker的run命令中添加的jenkins.xml文件--env jenkins_ARGS=“--prefix=/jenkins”。但仍然不起作用