Jenkins在Docker容器中运行但无法在浏览器中启动

时间:2018-12-06 09:15:11

标签: docker jenkins google-cloud-platform containers

我在Google云上安装了docker,并且已将Docker中心的Jenkins映像拉到了我的docker。现在,当我使用下面提到的命令运行带有Jenkins图像的容器时,其显示为“ INFO:Jenkins已完全启动并正在运行”。但是,当我在带有“ http://cloud_external_ip:port”的浏览器中进行尝试时,它没有打开。并显示一条消息:“无法访问此网站”。

docker container run -p 80:80 --name myjen jenkins

3 个答案:

答案 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
  • 修改Jenkins配置文件:/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 上访问。 谢谢

相关问题