Docker应用之仓库

Posted jiapeng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker应用之仓库相关的知识,希望对你有一定的参考价值。

仓库是存放镜像的地方

注册服务器是管理仓库的具体服务器,每个服务器上可以有多个仓库,每个仓库也可以有多个镜像

如 dl.dockerpool.com/ubuntu ,dl.dockerpool.com就是注册服务器地址,ubuntu是仓库名

一、Docker Hub公共镜像市场

Docker Hub是官方维护的一个公共镜像仓库

1、登录

docker login命令登录docker服务器

2、基本操作

1)、搜索centos镜像命令,OFFICIAL代表是官方的,STARTS代表星级,AUTOMATED代表是否自动创建

根据镜像资源一般分为两类,其一是基础或根镜像,由docker公司创建、验证、支持、提供,一般使用一个单词作为名字,如docker.io/centos

其二是用户提供的镜像,一般要在前面带有用户名,如docker.io/ansible/centos-ansible

docker search centos

2)、拉取镜像命令

docker pull centos  会默认拉取docker中centos仓库下最新镜像,tag为latest

3)、使用docker push [repository]命令推送镜像到仓库,repository为注册服务器地址/用户/仓库,如果没有注册服务地址则默认为docker.io

我在docker官网创建的仓库如下

如果镜像的repository不是标准仓库,则不能推送成功

如果仓库注册服务地址下没有该仓库也推送不成功

确保镜像repository正确,如果该镜像不是标准repository,要用docker tag  [ImageID]命令创建一个

推送后会在自己的仓库下找到

或省略docker.io,默认会到docker.io注册服务器,如果已经推送过,会报告已存在,同时更新推送的时间

 3、自动创建

对于经常升级镜像内的程序来说十分方便,自动创建允许用户通过Docker Hub指定跟踪一个目标网站(目前支持GitHub或BitBucket)上的项目,一旦发生新的提交,则自动执行创建

 二、其他镜像市场,如时速云、阿里云等

以时速云镜像市场为例,时速云镜像服务器地址https://hub.tenxcloud.com/

如搜索centos,回车

进入第一个镜像,会看到拉取方式及其他配置信息

docker pull index.tenxcloud.com/tenxcloud/centos

 三、搭建本地私有仓库

1、使用registry镜像创建私有仓库

docker pull registry拉取registry镜像

docker run -d -p 5000:5000 registry 本地端口映射,推送来的镜像默认存放在容器/tmp/registry目录下;

或使用

docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry 使用-v参数来将镜像存放在本地/opt/data/registry目录下

然后将镜像打标签,推送即可

在本地,docker rmi db2a删除,再docker pull 127.0.0.1:5000/test重新拉取

 

以上是关于Docker应用之仓库的主要内容,如果未能解决你的问题,请参考以下文章

容器技术之Docker私有镜像仓库docker-distribution

容器技术之Docker私有镜像仓库docker-distribution

9《每天5分钟玩转Docker容器技术》学习-Docker命令之镜像仓库

docker之镜像管理——仓库使用

企业运维容器之 docker仓库

14-docker系列-docker之harbor仓库的使用