从詹金斯的正式码头形象中试用詹金斯
docker run -d -p 8090:8080 jenkins注意,我已经选择了我的主机的8090端口来映射到码头容器的8080端口。
现在,在jenkins内部,我正在运行一个示例管道,其中只有一行
echo "${env.BUILD_URL}"作为这个管道脚本的结果,管道控制台输出显示了以下内容
http://localhost:8090/job/sample_pipeline/1/注意端口号8090
我的问题是,
容器内部的jenkins如何知道我将8090设置为主机端口,应该映射到jenkins容器的8080端口?
我的意思是,在从码头容器中调用env.BUILD_URL时,jenkins不是应该查看自己的主机并将端口8080作为其运行的端口号返回吗?
Jenkins不应该知道它是作为一个容器运行的,它需要在其容器范围之外查看以确定它映射到的外部端口号是什么?
发布于 2017-09-14 12:49:24
由于您使用http://localhost:8090访问控制台并触发构建,我猜它是从那里提取的。
https://stackoverflow.com/questions/40285069
复制相似问题