我正在尝试更改图像的存储库名称:

REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
server              latest              d583c3ac45fd        26 minutes ago      685.5 MB

因此,我想将名称服务器更改为类似myname/server的名称:

REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
myname/server       latest              d583c3ac45fd        26 minutes ago      685.5 MB

我该怎么做?


当前回答

根据码头工人文件https://docs.docker.com/engine/reference/commandline/rename/

docker rename CONTAINER NEW_NAME

其他回答

要重命名图像,请给它一个新标记,然后使用“rmi”命令删除旧标记:

$docker标签$docker rmi美元

第二步很吓人,因为“rmi”的意思是“删除图像”。然而,如果图像有任何其他标记,docker实际上不会删除该图像。也就是说,如果您要立即使用:docker rmi,那么它实际上会删除图像(假设没有其他标记分配给图像)

最近,我不得不将一些图像从Docker注册表(Docker.mycompany.com)迁移到Artifactory(Docker.Artifactory.mycompany.com)

docker pull docker.mycompany.com/something/redis:4.0.10
docker tag docker.mycompany.com/something/redis:4.0.10 docker.artifactory.mycompany.com/something/redis:4.0.10
docker push docker.artifactory.mycompany.com/something/redis:4.0.10
docker image tag #imageId myname/server:latest

这对我有用

docker image tag server:latest myname/server:latest

or

docker image tag d583c3ac45fd myname/server:latest

标签只是完整图像名称(d583c3ac45fd…)的人类可读别名。

因此,您可以根据自己的喜好将它们中的任意多个与同一图像关联。如果您不喜欢旧名称,可以在重新标记后将其删除:

docker rmi server

这只会删除别名/标记。由于d583c3ac45fd具有其他名称,因此不会删除实际图像。

docker tag CURRENT_IMAGE_NAME DESIRED_IMAGE_NAME