Makefile 获取刚构建的映像的ID

Makefile 获取刚构建的映像的ID,makefile,docker,Makefile,Docker,我有一个运行docker build-t$REPOSITORY:$VERSION.——这很好用的Makefile。现在,我想自动将latest标记添加到构建的图像中 执行此操作的命令是:docker tag$IMAGE\u ID latest 如何以编程方式获取图像ID,即我刚构建的图像的ID?$image\u ID实际上不必是图像ID。如果您知道图像名称(在您的情况下可能是$REPOSITORY:$VERSION),这就足够了: 但是,请注意,docker tag的第二个参数仍然需要图像名称;

我有一个运行
docker build-t$REPOSITORY:$VERSION.
——这很好用的Makefile。现在,我想自动将
latest
标记添加到构建的图像中

执行此操作的命令是:
docker tag$IMAGE\u ID latest


如何以编程方式获取图像ID,即我刚构建的图像的ID?

$image\u ID
实际上不必是图像ID。如果您知道图像名称(在您的情况下可能是
$REPOSITORY:$VERSION
),这就足够了:

但是,请注意,
docker tag
的第二个参数仍然需要图像名称;仅指定标记是不够的(仅指定
latest
时,您将得到名为
latest:latest
)的图像)


要逐字回答您的问题,您可以使用
docker images
命令获取具有已知名称的图像的ID:

$ IMAGE_ID=$(docker images -q $REPOSITORY:$VERSION)
或者,仅获取所有图像中的最新图像:

$ IMAGE_ID=$(docker images -q $REPOSITORY:$VERSION)
$ IMAGE_ID=$(docker images -q | head -1)