amazon-web-services - AWS - 码头工人和詹金斯
问题描述
我正在设置 jenkins 以通过 docker 运行。但似乎遇到了障碍。
通过 CLI 登录验证 docker 已安装并且 jenkins 映像已安装。
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest fce289e99eb9 8 weeks ago 1.84kB
jenkins latest cd14cecfdb3a 7 months ago 696MB
设置端口
docker run -d -p 49001:8080 -v $PWD/jenkins:/var/jenkins_home:z -t jenkins
验证容器正在运行:
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ff1f21312230 jenkins "/bin/tini -- /usr/l…" About an hour ago Up About an hour 50000/tcp, 0.0.0.0:49001->8080/tcp nostalgic_mestorf
检查主机是否可以在本地访问
curl localhost:49001
<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.Administer
-->
</body></html>
尝试连接到端口 8080 不起作用。
curl localhost:8080
curl: (7) Failed connect to localhost:8080; Connection refused
在 AWS 上运行 Red Hat Enterprise Linux Server 7.6 (Maipo)
如何允许访问以便 Jenkins 加载?我究竟做错了什么?任何帮助,将不胜感激。
解决方案
您将端口 49001 转发到 Docker 容器的端口 8080。这就是您访问 Jenkins 的方式。看起来你得到了正确的回应curl localhost:49001
。它要求您登录。
另请注意,该jenkins
图像已弃用。你应该jenkins/jenkins:lts
改用。