如何在Jenkins“Docker Plugin”中找到要使用的“Docker Host URI”?

p3rjfoxz  于 2023-05-06  发布在  Docker
关注(0)|答案(5)|浏览(155)

有没有什么命令我们可以运行并找到“Docker Host URI”?我发现了一些相关的questions,但没有得到它完全。

avwztpqn

avwztpqn1#

Jenkins作为容器运行时的Jenkins Docker插件配置
1.首先安装Docker插件。
1.转到Manage Jenkins -〉System Configuration -〉向下滚动到botton -〉Add Cloud -〉Docker。
1.如果你运行jenkins作为容器,在docker主机uri字段中,你必须输入docker主机的unix或tcp地址。但是因为你是以容器的形式运行jenkins,所以容器无法到达docker主机的unix端口。
1.因此,我们必须运行另一个容器,它可以在docker host和jenkins容器之间进行中介。它会公开docker主机的unix端口作为其tcp端口。按照说明创建socat容器https://hub.docker.com/r/alpine/socat/
1.创建Socat容器后,可以回到Jenkins中的Docker配置,输入tcp://socat-container-ip:2375
1.测试连接现在应成功。

ds97pgxw

ds97pgxw2#

另一个选项是输入Docker Host URI“unix:///var/run/docker.sock”,它对我起作用了,我希望它也是。

xggvc2p6

xggvc2p63#

是的,这是docker主机uri
tcp:127.0.0.1:2375
但在此之前,您需要添加此DOCKER_OPTS="-H tcp://127.0.0.1:2375-H unix:///var/run/docker.sock”
/etc/default/docker文件末尾,然后重启docker。onec重启后的docker.sock会在2375中运行,并在Jenkins中添加这个tcp://127.0.0.1:2375

smtd7mpg

smtd7mpg4#

如果你的docker运行在同一个主机上,你在容器中使用Jenkins,那么你可以使用unix:///var/run/docker.sock作为“Docker Host URI”,但你必须使用以下命令检查并获得jenkins用户的权限:

sudo groupadd docker
sudo usermod -aG docker $USER
sudo chmod a+rwx /var/run/docker.sock
sudo chmod a+rwx /var/run/docker.pid
vsmadaxz

vsmadaxz5#

如果您使用的是OS X,则HOST URL为:

unix:///var/run/docker.sock

相关问题