我使用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}
。但这确实有用。
答案 0 :(得分:0)
该文档告诉您使用docker run
,但您尝试docker exec
。 exec
子命令仅适用于当前正在运行的容器。
我想你可以在后台启动docker run -d
来启动容器,然后在完成后确保docker stop
。我怀疑,当出现问题时,这会给你留下一些孤立的运行容器。