关于linux容器:Docker如何更改存储库名称或重命名图像?

Docker how to change repository name or rename image?

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

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

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

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

我该怎么做?


1
docker tag server:latest myname/server:latest

1
docker tag d583c3ac45fd myname/server:latest

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

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

1
docker rmi server

这只会删除alias/tag。由于d583c3ac45fd有其他名称,实际图像不会被删除。


作为速记,您可以运行:

1
docker tag d58 myname/server:latest

其中d58表示图像ID的前3个字符,在本例中,这就是您所需要的全部内容。

最后,可以删除旧图像,如下所示:

1
docker rmi server


Docker标记当前图像名称所需图像名称


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

1
2
3
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 run-it--name新名称现有名称

更改现有图像名称。