Nginx 404 Docker反向代理访问反向代理位置
我正在使用docker containers和jenkins container的反向代理来处理这个问题。 我的nginx自定义配置如下:Nginx 404 Docker反向代理访问反向代理位置,nginx,docker,jenkins,Nginx,Docker,Jenkins,我正在使用docker containers和jenkins container的反向代理来处理这个问题。 我的nginx自定义配置如下: upstream jenkins { server 172.17.0.2:8080; } server { listen 80; server_name jenkins; location /jenkins { proxy_pass http://172.17.0.2:8080; } 另外,/etc/nginx/ng
upstream jenkins {
server 172.17.0.2:8080;
}
server {
listen 80;
server_name jenkins;
location /jenkins {
proxy_pass http://172.17.0.2:8080;
}
另外,/etc/nginx/nginx.conf没有任何默认的根目录,但当我尝试访问时,它仍然给我提供了访问/jenkins时出现问题的404。原因:未找到
我检查了nginx错误日志,发现它有“/etc/nginx/html/index.html”未找到
虽然我没有设置任何/etc/nginx/html/config,但为什么它会给我404错误?
有人能澄清我的疑问吗
类似的内容似乎更适合nginx部分。如果您声明上游,请使用它:
upstream jenkins {
server 172.17.0.2:8080;
}
server {
listen 80;
server_name jenkins;
location /jenkins {
proxy_pass http://jenkins;
}
}
对于docker部分,如果可以,我建议使用端口映射。因为docker容器的IP发生了变化,所以每次重新创建jenkins容器时都必须编辑配置文件。使用类似于docker container run-d-p 127.0.0.1:8080:8080 my jenkins container image的东西,您可以将nginx配置修改为类似以下内容:
upstream jenkins {
server 127.0.0.1:8080;
}
server {
listen 80;
server_name jenkins;
location /jenkins {
proxy_pass http://jenkins;
}
}
我试图在上游块中使用容器名称,因为nginx和jenkins位于同一docker网络中,但我仍然得到了默认的索引页。。