在本地的镜像,可以导出成 tar归档文件,可以把该文件分享给他人使用,然后在其他机器上再导入镜像,就可以使用了。

其实,也可以把本地创建好的镜像上传到公共的或者私有的镜像仓库(最常用)。

一、上传到公共的镜像仓库

这里使用阿里云账号。创建公共的镜像仓库

在“容器镜像服务”里面创建,创建好之后,仓库的基本信息,操作指南里面都有说明。

1、登录阿里云Docker Registry

[root@centos7 ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
jqcontos            v7                  e95e8427c1eb        23 hours ago        203MB
redis               latest              41de2cc0b30e        5 days ago          104MB
centos              7                   7e6257c9f8d8        3 weeks ago         203MB
[root@centos7 ~]# docker login --username=jq_demo registry.cn-hangzhou.aliyuncs.com
Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-storeLogin Succeeded

2、使用 docker tag 命令:添加镜像标签

标记本地镜像,将其归入某一仓库。

语法:docker tag [OPTIONS] IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG]

给 jqcontos:v7 添加镜像标签,标记到公共仓库

[root@centos7 ~]# docker tag jqcontos:v7 registry.cn-hangzhou.aliyuncs.com/charge/repo_test:jqcentosv7
[root@centos7 ~]# docker images
REPOSITORY                                           TAG                 IMAGE ID            CREATED             SIZE
registry.cn-hangzhou.aliyuncs.com/charge/repo_test   jqcentosv7          e95e8427c1eb        23 hours ago        203MB
jqcontos                                             v7                  e95e8427c1eb        23 hours ago        203MB
redis                                                latest              41de2cc0b30e        5 days ago          104MB
centos                                               7                   7e6257c9f8d8        3 weeks ago         203MB

3、使用 docker push 命令:将本地的镜像上传到镜像仓库

语法:docker push [OPTIONS] NAME[:TAG]

把标记好的jqcontos:v7 上传到公共仓库

[root@centos7 ~]# docker push registry.cn-hangzhou.aliyuncs.com/charge/repo_test
registry.cn-hangzhou.aliyuncs.com/charge/repo_test             registry.cn-hangzhou.aliyuncs.com/charge/repo_test:jqcentosv7
[root@centos7 ~]# docker push registry.cn-hangzhou.aliyuncs.com/charge/repo_test:jqcentosv7
The push refers to repository [registry.cn-hangzhou.aliyuncs.com/charge/repo_test]
613be09ab3c0: Pushed
jqcentosv7: digest: sha256:7aa35fe4f930a54ba521489eca0e2e5edef3cb3105a263bbb72c054a3aa82372 size: 529

4、从公共仓库拉取镜像 - docker pull命令

语法:docker pull [OPTIONS] NAME[:TAG|@DIGEST]

[root@centos7 ~]# docker pull registry.cn-hangzhou.aliyuncs.com/charge/repo_test:jqcentosv7   

跟着操作指南来,还是很简单的。

二、上传到私有的镜像仓库

1、搭建一个docker私有库服务

使用 docker run 命令:创建一个新的容器并运行一个命令

语法:docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

OPTIONS说明:

  • -d: 后台运行容器,并返回容器ID;
  • -p: 指定端口映射,格式为:主机(宿主)端口:容器端口
  • --name="nginx-lb": 为容器指定一个名称;
  • --restart=alwarys 标识当docker daemon启动的时候一起启动。
[root@centos7 ~]# docker run -d -p 5000:5000 --restart=always --name registry2 registry:2
8df654f7a11d7112991c9c04a818b35251f9650eec7f405de799c4a403da8584

docker私服的搭建非常简单,这里在启动镜像的时候会先去下载registry 2.0。

这样一个docker私服就已经创建并启动好了。

2、将镜像上传到docker私服 -- push

添加镜像标记,然后push。

[root@centos7 ~]# docker tag redis:latest localhost:5000/redis:latest
[root@centos7 ~]# docker push localhost:5000/redis:latest 

3、拉取私有仓库镜像 -- pull

[root@centos7 ~]# docker pull localhost:5000/redis:latest

4、查看私服镜像所有仓库

[root@centos7 ~]# curl http://localhost:5000/v2/_catalog
{"repositories":["redis"]}

5、查看仓库中镜像的所有标签列表

[root@centos7 ~]# curl http://localhost:5000/v2/centos/tags/list
{"errors":[{"code":"NAME_UNKNOWN","message":"repository name not known to registry","detail":{"name":"centos"}}]}

 6、使用 localhost,127.0.0.1 ,ip 都可以,局域网中一般使用 ip地址。

注意:使用 ip地址,可能会报错,

原因是:docker私有仓库服务器,默认是基于 https传输的,所以我们设置该ip不使用 https传输

出现上面问题,配置Docker引擎的配置文件/etc/docker/daemon.json ,重新加载它,并重启Docker,然后在操作即可。

"insecure-registries": ["ip:port"]

[root@centos7 ~]# vim /etc/docker/daemon.json
[root@centos7 ~]# systemctl daemon-reload
[root@centos7 ~]# systemctl restart docker

这样设置该ip不使用https传输的操作不安全。如果配置安全证书,管理访问权限,提高安全性,可自行百度。

不管是公共的还是私有的镜像仓库,上传,拉取命令都一样,注意填写好仓库Registry地址就行。

参考文章:

Docker私服搭建及上传自己镜像到私服仓库

The push refers to a repository(docker报错解决方案)

—— Stay Hungry. Stay Foolish. 求知若饥,虚心若愚。

Docker上传镜像到阿里云或私服仓库相关推荐

  1. 上传镜像到阿里云仓库

    1.登录阿里云找到容器镜像服务 2.点击个人实例 3.创建镜像仓库 4.点击你的仓库根据操作指南操作 三步就可以搞定,但是有细节 5.操作案例 上面是我的镜像,比如我选择最后一行的mysql镜像,记住 ...

  2. 基于滴滴云安装 Docker 并上传镜像到滴滴云 Docker 仓库

    前言 Docker 简化了容器中应用程序进程的管理过程.容器允许您在资源隔离的进程中运行应用程序.容器与虚拟机类似,但容器更便携.更资源友好,并且更依赖于主机操作系统. 本文将介绍如何用滴滴云服务器在 ...

  3. 微信小程序直接上传文件到阿里云OSS组件封装

    微信小程序直接上传文件到OSS 1. 封装公共方法 在根目录utils目录新建一个upload文件夹: // utils/upload/base64.jsvar base64EncodeChars = ...

  4. mac SCp上传文件到阿里云服务器centos

    1.mac链接远程阿里云服务器centos命令: ssh -A -p 22 root@ip 2.mac上传文件到阿里云centos: 3.阿里云服务器weapps下文件删除命令: 4.上传文件相关 m ...

  5. java上传文件至阿里云oss工具类

    第一步:引入oss maven坐标 <dependency><groupId>com.aliyun.oss</groupId><artifactId>a ...

  6. 批量上传视频到阿里云

    批量上传视频到阿里云 这段时间项目里有一个上传视频到阿里云的功能是我来负责写的,之前一直没有写过这种功能,感觉很难的亚子,但是后来仔细研究了一遍发现也没想象中那么难,最后经过不懈的努力也算是搞出来了哈 ...

  7. 上传文件到阿里云linux服务器

    上传文件到阿里云linux服务器 安装Putty软件(用来连接阿里云服务器的一款软件,里面有用来上传文件到服务器的可执行文件) 参考以下网址: https://help.aliyun.com/docu ...

  8. Android(安卓)上传文件到阿里云点播,阿里云点播转码

    Android(安卓)上传文件到阿里云点播,阿里云点播转码 文章目录 Android(安卓)上传文件到阿里云点播,阿里云点播转码 一:登录阿里云点播平台配置添加转码模板组 1:需要什么参数,可自行填写 ...

  9. 上传视频到阿里云服务器

    ######上传视频到阿里云服务器工具类 1.maven坐标 <dependency><groupId>com.aliyun</groupId><artifa ...

最新文章

  1. 深度估计相关原理(计算机视觉和深度学习基础)
  2. nvidia 英伟达 显卡 GPU 的计算能力
  3. Eclipse MAT插件下载地址
  4. 帕雷托最优(Pareto optimality)、帕雷托效率(Pareto efficiency)
  5. sqlite数据库实现字符串查找的方法(instr,substring,charindex替代方案)
  6. 研讨会 | 知识工程与问答技术研讨会 (KEQA2018)
  7. 适合初学者的安卓开源项目_开源世界中初学者的颠簸之旅
  8. 在linux下 用户的密码错误,linux – 常规用户帐户之间的su失败,“su:密码错误”...
  9. mysql服务没有权限开机不会自启动_计算机服务项里没有MySQL服务,无法设置开机自启动或者关闭自启动,的解决办法...
  10. Filter动态代理敏感词汇过滤
  11. sle4442,sle4428解
  12. python对txt文件进行处理实战_python数据处理实战
  13. 移动Ad Hoc网络路由协议汇总
  14. pixi.js淘宝小程序快速上手指南
  15. Windows XP 黑屏补丁
  16. Java随笔记 - 断包和粘包 解决方法
  17. 【游戏逆向】FPS网络游戏自动瞄准漏洞分析以及实现二
  18. 北京科技大学计算机专业评价,北京科技大学王牌专业怎么样?爆赞!
  19. 平阴县实验学校计算机老师,人物 | 平阴县实验学校邢珍:认认真真做事,踏踏实实做人...
  20. Python open函数用法

热门文章

  1. IBookReader初体验
  2. A股股票对敲合作,主力游资倒仓接盘业务解析
  3. 写给2035年的自己
  4. UGC、PGC、OGC比较详解
  5. 白白的python之路--Day5
  6. Java 17 采用率增长 430%、Java 11 稳居第一,最新 Java 编程语言报告来了!
  7. mongo查询总结及python调用mongo
  8. MySQL容灾方案简介
  9. windows版redis安装使用
  10. 一个网上在线密码破解网站