我在Docker容器中安装了Jenkins,但它不会自动运行。我必须运行/etc/init.d/jenkins start。然后一切都变得顺畅而美好。我遵循的所有教程都说,安装后应默认运行,但不是。
有什么想法吗?
如果你喜欢在各种詹金斯图像的Dockerfile(如官方_/jenkins一个),你会发现为什么詹金斯“自动运行”:
_/jenkins
COPY jenkins.sh /usr/local/bin/jenkins.sh ENTRYPOINT ["/bin/tini", "--", "/usr/local/bin/jenkins.sh"]
( tini 是用于采用僵尸进程的脚本,这是我之前在“ [在Docker中使用Supervisor ”中介绍的一个问题)
tini
在Docker中使用Supervisor
因此,这取决于ENTRYPOINT您的Dockerfile:它应该包含启动Jenkins的正确命令。
ENTRYPOINT
您也可以在docker文件中使用超级用户或入口点。
无需使用主管:这就是官方图片中的目的。
如果我使用配置为自动运行jenkins的官方jenkins映像,我想我可以安装Locustio并随后使用“ docker exec”启动它,对吗?
您不会在同一映像中安装Locusto,也不会习惯在docker execJenkins容器中运行它(docker exec主要是为了调试而打开会话)
docker exec
您将使用Locust.io图像运行 第二个 容器。 如果jenkins需要locust.io,则可以先运行locust.io,然后再使用--link指令运行jenkins 。
--link