我在Google云上安装了docker,并且已将Docker中心的Jenkins映像拉到了我的docker。现在,当我使用下面提到的命令运行带有Jenkins图像的容器时,其显示为“ INFO:Jenkins已完全启动并正在运行”。但是,当我在带有“ http://cloud_external_ip:port”的浏览器中进行尝试时,它没有打开。并显示一条消息:“无法访问此网站”。
docker container run -p 80:80 --name myjen jenkins
答案 0 :(得分:0)
您是否尝试过从Cloud Shell中检查防火墙规则,例如:
$gcloud compute firewall-rules list | grep 80
然后,如果您需要设置新规则:
$gcloud compute firewall-rules create default-allow-http --allow tcp:80
有关更多信息,您可以查看Google Doc
答案 1 :(得分:0)
Jenkins的默认端口为8080。您可以使用以下命令找出docker中映射的所有端口:
$ docker ps -l
或仅针对一个容器:
$ docker port myappname
,然后在结果中搜索Jenkins和ExposedPorts,其外观类似于:
“ExposedPorts”: {
“8080/tcp”: {}
},
如果您没有更改Jenkins的默认端口,并且在安装过程中使用的是this documentation,则您的Jenkins可能正在8080端口上工作。
在检查端口后,如果要/需要在Jenkins中进行更改,则有两个选择:
java -jar jenkins.war --httpPort=80
/PATH/jenkins
,搜索HTTP_PORT
,然后添加所选端口:HTTP_PORT = 80
您需要在修改参数后重新启动服务。
如果要使用端口8080,请确保在GCP中对此端口具有正确的防火墙规则。您可以使用@ J.Rojas指定的命令。
答案 2 :(得分:0)
如果您在 docker 容器中运行 Web 应用程序,则在将其浏览到 Web 浏览器之前,您需要进行端口映射。
而不是运行
docker run jenkins
运行这个
docker run -p 8080:8080 jenkins
这会将您的本地主机映射到容器的内部 IP,您可以轻松访问应用程序。
要更改端口,您可以:
docker run -p 8356:8080 jenkins
它可以在端口 8356 上访问。 谢谢