我目前正在尝试学习使用docker,我遇到了一个反向代理和apache的小问题。
所以我有一个运行jenkins / jenkins的容器:最新的端口8080,我想用apache将它映射到端口80上的/ jenkins。这是我当前的代理配置:
ProxyPass /jenkins http://jenkins:8080/jenkins nocanon
ProxyPassReverse /jenkins http://jenkins:8080/jenkins
ProxyRequests Off
AllowEncodedSlashes NoDecode
有了这个,它将第一个请求重定向到jenkins容器,但jenkins重定向到/ login,导致404。 我明白为什么会发生这种情况,但有没有办法解决这个问题而不通过在其上设置前缀来修改jenkins图像?
我不想添加前缀的主要原因是因为它似乎很多工作,特别是如果我需要为我想在docker中运行的所有服务执行此操作...它看起来似乎非常不切实际。
答案 0 :(得分:0)
Docker hub page for Jenkins没有提到/ jenkins后缀。您是否尝试了以下设置?
ProxyPass / http://jenkins:8080/ nocanon
ProxyPassReverse / http://jenkins:8080/
ProxyRequests Off
AllowEncodedSlashes NoDecode