如何在Jenkins中获取Docker的容器ID

时间:2015-11-27 09:20:09

标签: jenkins docker containers

我使用Docker Custom Build Environment Plugin"jpetazzo/dind" docker image中构建我的项目。构建之后,在控制台输出中显示:

  

Docker容器212ad049dfdf8b7180b8c9b185ddfc586b301174414c40969994f7b3e64f68bc开始托管构建

     

$ docker exec --tty 212ad049dfdf8b7180b8c9b185ddfc586b301174414c40969994f7b3e64f68bc env

     

[工作区] $ docker exec --tty --user 122:docker 4aea29fff86ba4e50dbcc7387f4f23c55ff3661322fb430a099435e905d6eeef env BUILD_DISPLAY_NAME =#73

此处启动的Docker Container具有容器ID 212ad049dfdf8b7180b8c9b185ddfc586b301174414c40969994f7b3e64f68bc。 现在我想进一步执行一些命令"执行shell"参与" Build" Jenkins中的选项,我想使用这个Container Id。我尝试使用插件页面中提到的${BUILD_CONTAINER_ID}。但这确实有用。

1 个答案:

答案 0 :(得分:0)

该文档告诉您使用docker run,但您尝试docker execexec子命令仅适用于当前正在运行的容器。

我想你可以在后台启动docker run -d来启动容器,然后在完成后确保docker stop。我怀疑,当出现问题时,这会给你留下一些孤立的运行容器。