前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >把 Docker镜像装到仓库需要几步?

把 Docker镜像装到仓库需要几步?

作者头像
用户1560186
发布2019-11-19 21:36:11
3560
发布2019-11-19 21:36:11
举报
文章被收录于专栏:运维录运维录

只需要三步

  • docker tag 为镜像打标记 http://zongming.net/read-1015
  • docker login 登陆远程仓库 http://zongming.net/read-1017
  • docker push 推送本地镜像 http://zongming.net/read-1019


使用docker tag 命令为镜像打上标记,比如为网易蜂巢(已改名网易云)镜像仓库推送镜像,首先需要为镜像做好标记;

1. 目标镜像

代码语言:javascript
复制
docker images | grep nginx
ubuntu-nginx    latest  cd34135ed904    About an hour ago   222 MB

其中 latest是镜像的标签,cd34135ed904是镜像的ID。

2. 为镜像做标记

代码语言:javascript
复制
docker tag cd34135ed904 hub.c.163.com/dongnan/ubuntu-nginx:0315

你会发现这两个镜像对应同一个ID,所以它们是相同的(只占一份存储空间)。

代码语言:javascript
复制
docker images | grep nginx

hub.c.163.com/dongnan/ubuntu-nginx   0315                cd34135ed904        About an hour ago   222 MB
ubuntu-nginx                         latest              cd34135ed904        About an hour ago   222 MB

3. 标记格式

hub.c.163.com/dongnan/ubuntu-nginx:0315 镜像是按照网易蜂巢的要求(不同服务商有可能不同)。

代码语言:javascript
复制
格式为: 仓库地址+用户名+镜像名称[:标签]
仓库地址 hub.c.163.com
用户名 dongnan
镜像名称 ubuntu-nginx
标签 :0315


为了使用网易蜂巢镜像仓库服务,我们还需要登陆这个远程仓库。

代码语言:javascript
复制
docker login -u dongnan@zongming.net -p password -e dongnan@zongming.net https://hub.c.163.com

WARNING: login credentials saved in /home/dongnan/.docker/config.json
Login Succeeded

提示信息 Login Succeeded 表示登录成功,接下来就是第三步了。


1. 推送我们准备好的镜像

代码语言:javascript
复制
docker push hub.c.163.com/dongnan/ubuntu-nginx:0315

The push refers to a repository [hub.c.163.com/dongnan/ubuntu-nginx] (len: 1)
cd34135ed904: Pushed
bbdcc791806d: Pushed
...省略
d3a1f33e8a5a: Pushed
0315: digest: sha256:64e922825284c0f2c9def81e5789e56c368cfbf93dc6a51779203022ac9b8dea size: 13173

2. 因为docker镜像使用分层存储技术,对于已经存在的存储层可以复用。所以第2次推送镜像速度非常快。

代码语言:javascript
复制
docker push hub.c.163.com/dongnan/ubuntu-nginx:0316

The push refers to a repository [hub.c.163.com/dongnan/ubuntu-nginx] (len: 1)
88519bf84585: Pushed
cd34135ed904: Image already exists
bbdcc791806d: Image already exists
...省略
d3a1f33e8a5a: Image already exists
0316: digest: sha256:a6f4f059a48626113e8cc65cf73d34201c13800b73ae6de748039eb2f848ac4f size: 14777


至此docker镜像就推送完成了,本篇文章到这里就结束了..... Wait好像少了点什么?示例中的镜像是从哪里来的?

真细心^_^ 一般情况下镜像是使用 docker pull 命令在Docker仓库下载的,例如:

代码语言:javascript
复制
docker pull python:3.6

python镜像是由python团队维护的官方镜像,并保存在 hub.docker.com

Star表示欢迎程度,Official 表示官方镜像。

你可以使用 docker search 命令搜索你需要的镜像,效果是相同的。

代码语言:javascript
复制
docker search python        

此外如果你需要自定义镜像,例如需要额外安装一些python库,那么可以使用Dockerfile来完成,后续将写专门写一篇Dockerfile自定义镜像的文章。


本篇文章涉及5个docker 子命令,它们的功能与使用方法如下图。


代码语言:javascript
复制
本期搬砖就到这里下期再搬
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-08-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 运维录 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 只需要三步
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档