Docker 007 镜像的发布与删除
Docker 007 镜像的发布与删除
很多时候,镜像构建完成后,我们会把镜像分享出去,官方提供的是 DockerHub供我们上传分享镜像,上传的镜像可完全公开或部分公开,但私有仓库需要付费。
使用 docker push
命令可将镜像推送到 Docker Hub:
# 把镜像 static_web
$ docker push myweb01
The push refers to repository [docker.io/library/myweb01]
...
denied: requested access to the resource is denied
# 网上查找后说是要先登录 docker login ,再在镜像前指定 docker 的注册用户名,尝试后说找不到镜像
$ docker push resn001/myweb01
The push refers to repository [docker.io/resn001/myweb01]
An image does not exist locally with the tag: resn001/myweb01
# 后来又查到,要将镜像的 tag 修改为: docker用户名/镜像名
# 修改后再次上传果然可以
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
myweb01 latest 80d1a6e64f98 11 days ago 152MB
$ docker tag myweb01 resn001/myweb01
$ docker push resn001/myweb01
The push refers to repository [docker.io/resn001/myweb01]
0da20a4f5fdc: Pushed
...
43c67172d1d1: Pushed
latest: digest: sha256:27beecd4e9c98ebef31656710a9aa84dff6a19a16c0c0290e106283f6b2e460d size: 1571
自动构建
使用自动构建的第一步是将 github 或 Bitbucket连接到 docker hub,在添加repository时,关联上 github 或者Bitbucket的账户,或者repository创建完成后,在 build 项下进行关联。
关联好后,点击 build 项,选择要关联的 github 项目,并做适当的配置即可进行自动化构建。
删除镜像
当镜像没用的时候就可以把他删除,删除镜像的命令是:
$ docker rmi myweb01
# 或者
$ docker image rm myweb01
# 使用上面的命令可删除多个
$ docker rmi myweb01 myweb02
$ docker image rm myweb01 myweb02
如果想删除 docker hub 上的镜像仓库,需要登录后方可删除。