我需要通过Jenkins运行docker容器。为此,我使用“开始/停止Docker容器”作为构建步骤
启动/停止Docker容器
Action to choose : Run container
Docker Cloud name : docker_demo
ID : DOCKER_IMAGE_ID
DNS
Port bindings :port
Bind all declared ports :
Hostname : ip address
在运行作业时,它会告诉“无效ID”。任何人都可以建议,如何在jenkins中获取docker的图像ID?
您可以使用以下命令查看docker image id(对于您从docker hub构建或提取的图像):docker images
OP评论后更新:
docker images --filter
只实现了dangling = true,因此您无法使用这种方式搜索容器ID。所以你必须依赖shell脚本,这是一个例子:
docker images | grep -E '^golang.*latest' | awk -e '{print $3}'
您需要在grep中定制正则表达式以匹配您的图像名称和标记。
基于docker documentation的一条班轮:
sudo docker images --filter=reference=image_name --format "{{.ID}}"
用您的实际泊坞窗图像名称替换image_name
。您可以将该值存储在shell变量中,以便进一步引用:
IMAGE_ID=$(sudo docker images --filter=reference=image_name --format "{{.ID}}"
然后使用$IMAGE_ID
访问它
docker ps -a --format "{{.ID}}" | head -1
占位符
。ID
.Repository
。标签
。消化
.CreatedSince
.CreatedAt
。尺寸