手记

Docker镜像推送(push)到Docker Hub

镜像构建成功后,只要有docker环境就可以使用,但必须将镜像推送到Docker Hub上去。我们之前创建的镜像不符合Docker Hub的tag要求,因为 在Docker Hub注册的用户名是boonyadocker而不是boonya,所以需要docker tag进行修改,最后利用docker push命令推送镜像到公共仓库。

Docker hub注册用户

到官网注册账号:https://hub.docker.com/

在本地Linux登录docker:


  1. docker login  


输入用户名密码进行登录:



  1. docker@default:~$ docker login  

  2. Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.  

  3. Username: boonyadocker  

  4. Password:   

  5. Login Succeeded  

  6. docker@default:~$   



tag修改镜像名称

推送镜像的规范是:

  1. docker push 注册用户名/镜像名  



tag命令修改为规范的镜像:


  1. docker tag boonya/tomcat-allow-remote boonyadocker/tomcat-allow-remote  


查看修改后的规范镜像:



  1. docker@default:~$ docker images  

  2. REPOSITORY                         TAG                 IMAGE ID            CREATED             SIZE  

  3. boonyadocker/tomcat-allow-remote   latest              6137f64875dd        7 hours ago         571MB  

  4. boonyadocker/tomcat-web            latest              09677d05b579        2 days ago          571MB  

  5. <none>                             <none>              e1471ab1845a        3 days ago          188MB  

  6. <none>                             <none>              cf240e31edfb        3 days ago          188MB  

  7. <none>                             <none>              717961796ae2        3 days ago          334MB  

  8. apptomcat                          1.0                 249dc3f5dfb0        3 days ago          334MB  

  9. tomcat                             8                   a2fbbcebd67e        8 days ago          334MB  

  10. ubuntu                             14.04               4a2820e686c4        2 weeks ago         188MB  

  11. wurstmeister/kafka                 latest              12453f4efa7b        6 weeks ago         265MB  

  12. docker@default:~$   



推送镜像到Docker Hub

通过push命令推送镜像:


  1. docker push boonyadocker/tomcat-allow-remote:latest  


注:推送Docker Hub速度很慢,耐心等待,很有可能失败,失败会尝试多次重传,之后断开推送(但已推送上去的会保留,保留时间不知道是多久)。

下面是上传完毕的输出(多次重传):

 

  1. docker@default:~$ docker push boonyadocker/tomcat-allow-remote:latest  

  2. The push refers to a repository [docker.io/boonyadocker/tomcat-allow-remote]  

  3. 464a44ea0195: Layer already exists   

  4. 29b57e33a4da: Pushed   

  5. d649a240e453: Layer already exists   

  6. d0757a6730d0: Layer already exists   

  7. 768dcfe5d05f: Layer already exists   

  8. f5cfc06b640d: Layer already exists   

  9. 9669d6b73383: Layer already exists   

  10. latest: digest: sha256:1e7562a15ef1728f213922d9633be67f3025447d0a641e333a8ec5107749c386 size: 11802  

  11. docker@default:~$   


还是需要耐心,因为大文件比较耗时。


访问Docker Hub发布镜像

上传完成后访问:https://hub.docker.com/r/boonyadocker/tomcat-allow-remote/,如下图所示,大家都可以使用我发布的镜像了:


在Docker Hub上进行搜索,也是可以搜出来的:


至此我们已达到将自己的镜像发布到Docker Hub仓库。

Docker 使用发布的镜像

搜索已发布的镜像:

  1. docker@default:~$ docker search boonyadocker/tomcat-allow-remote  

  2. NAME                               DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED  

  3. boonyadocker/tomcat-allow-remote   In this Tomcat image server you can use ma...   0                      

  4. docker@default:~$  


因为我们已经发布自己的镜像,以后都可以直接使用docker pull命令拉取使用镜像: 

  1. docker pull boonyadocker/tomcat-allow-remote  




注:镜像是基于Tomcat8的远程管理角色权限,管理账号和密码是:tomcat/password。

原文出处

1人推荐
随时随地看视频
慕课网APP