当前位置: 首页 > 面试题库 >

在Docker容器中安装后,Jenkins不会自动运行

巫马越彬
2023-03-14
问题内容

我在Docker容器中安装了Jenkins,但它不会自动运行。我必须运行/etc/init.d/jenkins
start。然后一切都变得顺畅而美好。我遵循的所有教程都说,安装后应默认运行,但不是。

有什么想法吗?


问题答案:

如果你喜欢在各种詹金斯图像的Dockerfile(如官方_/jenkins一个),你会发现为什么詹金斯“自动运行”:

COPY jenkins.sh /usr/local/bin/jenkins.sh
ENTRYPOINT ["/bin/tini", "--", "/usr/local/bin/jenkins.sh"]

tini 是用于采用僵尸进程的脚本,这是我之前在“
[在Docker中使用Supervisor ”中介绍的一个问题)

因此,这取决于ENTRYPOINT您的Dockerfile:它应该包含启动Jenkins的正确命令。

您也可以在docker文件中使用超级用户或入口点。

无需使用主管:这就是官方图片中的目的。

如果我使用配置为自动运行jenkins的官方jenkins映像,我想我可以安装Locustio并随后使用“ docker exec”启动它,对吗?

您不会在同一映像中安装Locusto,也不会习惯在docker execJenkins容器中运行它(docker exec主要是为了调试而打开会话)

您将使用Locust.io图像运行
第二个 容器。
如果jenkins需要locust.io,则可以先运行locust.io,然后再使用--link指令运行jenkins 。



 类似资料:
  • 安装到Ubuntu容器中需要运行/etc/init.d/amh-start才会启动, 把/etc/init.d/amh-start放到dockerfile中的cmd 运行容器启动完程序容器会自动关闭

  • 问题内容: 我想在Centos7的Docker容器中运行Jenkins。我看到了Jenkins的官方文档:首先,从Docker存储库中提取官方的jenkins映像。 接下来,使用该映像运行一个容器,并将数据目录从该容器映射到主机;例如,在下面的示例中,容器中的/ var / jenkins_home从主机上的当前路径映射到jenkins /目录。Jenkins 8080端口也以49001的身份向主

  • 我让jenkins在github上的容器和项目源代码中运行。 我需要在与jenkins相同的主机上运行容器中的项目,但不是作为docker中的docker,我希望将它们作为兄弟容器运行。 我的管道如下所示: 从github中提取源文件 我现在要做的是使用jenkins容器中主机的docker套接字: jenkins容器将源代码为/var/jenkins_home/workspace/BRANCH_

  • 问题内容: 我正在设置一个简单的图像:包含Riak(一个NoSQL数据库)的图像。该映像以CMD形式启动Riak服务。现在,如果我使用将该程序作为守护程序运行,它将启动Riak进程(我可以在日志中看到它)。但是,它会在几秒钟后自动关闭。如果我使用riak进程未启动运行它(更新:对此的解释,请参见答案)。实际上,根本没有任何服务在运行。我可以使用终端手动启动它,但是我希望Riak自动启动。我认为其他

  • 问题内容: 我一直在关注几种不同的教程以及官方教程,但是每当我尝试在容器中安装PostgreSQL时,我都会收到以下消息 我在SO和整个互联网上浏览了几个问题,但是没有运气。 问题答案: 问题是您的应用程序/项目正在尝试访问HOST机器(不是docker容器)中的postgres套接字文件。 要解决这个问题,要么必须在使用该标志为postgres容器设置端口时明确要求进行tcp / ip连接,要么

  • 我一直在关注几个不同的教程以及官方教程,但是每当我试图在容器中安装PostgreSQL时,我都会收到以下消息 我在SO和整个互联网上看了几个问题,但没有运气。