无法连接到在Mac上的Vagrant内运行的Jenkins docker容器

时间:2016-12-26 17:00:04

标签: jenkins docker vagrant

我在Mac上运行Vagrant - 分拆Ubuntu VM。 Docker安装在Ubuntu VM上。

我使用docker pull jenkins拉下了Jenkins容器,然后说:docker run -p 8080:8080 --name=jenkins-master jenkins

但是,我无法从端口8080上的浏览器连接到Jenkins。我尝试使用以下命令从浏览器访问Jenkins: 1. http://IP1:8080其中IP1是命令docker inspect <container_name>返回的值。 2. http://IP2:8080其中IP2是命令&#39; ifconfig&#39;返回的eth0值。在ubuntu VM中。

3 个答案:

答案 0 :(得分:3)

如果您尝试访问VM计算机上的jenkins而不是尝试:

localhost:8080 or 127.0.0.1:8080

如果您从主机访问而不是将您的流浪汉配置更改为:

Vagrant.configure("2") do |config| config.vm.network "forwarded_port", guest: 8080, host: 8080 end

再试一次: localhost:8080 or 127.0.0.1:8080

答案 1 :(得分:1)

这里需要双端口转发,你将Vagrant网络接口端口转发到docker容器网络接口(&#39; -p 8080:8080&#39;),但是错过了你的Mac网络接口的端口转发流浪机。

Vagrant.configure("2") do |config|
  config.vm.network "forwarded_port", guest: 8080, host: 8080
end

https://www.vagrantup.com/docs/networking/forwarded_ports.html

答案 2 :(得分:0)

如果您的docker和jenkins安装在VM中。首先运行以检查docker容器的名称。如果有任何删除全部由$ docker rm container_name。

然后运行以下命令运行jenkins:

$ vagrant ssh。它会让你进入虚拟机。然后

$ docker run -p 8080:8080 -p 50000:50000 --name myjenkins jenkinsci / jenkins(安装了jenkins图像名称)。

动臂。