您的位置:首页 > 运维架构 > Docker

docker三大组件---仓库

2018-01-20 14:39 295 查看

1、Docker Hub

目前 Docker 官方维护了一个公共仓库 Docker Hub,其中已经包括了超过 15,000 的镜像。大部分需求,

都可以通过在 Docker Hub 中直接下载镜像来实现。

1.1、登录

可以通过执行 docker login 命令来输入用户名、密码和邮箱来完成注册和登录。 注册成功后,本地用户

目录的 .dockercfg 中将保存用户的认证信息。

1.2、search,pull指令

用户无需登录即可通过 docker search 命令来查找官方仓库中的镜像,并利用 docker pull 命令来将它下载到本地。



可以看到返回了很多包含关键字的镜像,其中包括镜像名字、描述、星级(表示该镜像的受欢迎程度)、

是否官方创建、是否自动创建。 官方的镜像说明是官方项目组创建和维护的,automated 资源允许用户验

证镜像的来源和内容。

根据是否是官方提供,可将镜像资源分为两类。 一种是类似 centos 这样的基础镜像,被称为基础或根镜

像。这些基础镜像是由 Docker 公司创建、验证、支持、提供。这样的镜像往往使用单个单词作为名字。

还有一种类型,比如 jdeathe/centos 镜像,它是由 Docker 的用户创建并维护的,往往带有用户名称前

缀。可以通过前缀 user_name/ 来指定使用某个用户提供的镜像,比如 jdeathe用户。



另外,在查找的时候通过 -s N 参数可以指定仅显示评价为 N 星以上的镜像。

1.3、push指令

docker push 镜像




2、docker搭建本地仓库

docker-registry 是官方提供的工具,可以用于构建私有的镜像仓库。

[root@bfd-v7 ~]# docker pull registry
# 我们将本地的/opt/registryz作为本地的仓库
[root@bfd-v7 ~]# docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry


我们查看仓库中并没有镜像存在



在私有仓库上传、下载、搜索镜像:

#用tag命令将tomcat:v1做个标记为别为下面两个版本。
[root@bfd-v7 ~]# docker tag tomcat:v1 192.168.12.5:5000/tomcat:v2
[root@bfd-v7 ~]# docker tag tomcat:v1 192.168.12.5:5000/tomcat:v3




我们看到之前创建的registry的容器依然在运行



现在我们就可以用push指令将镜像上传到本地仓库:



错误的解决办法:

在/etc/docker、daemon.json中添加一下的内容,添加完后记得要重启。



重启docker服务,上传镜像到本地仓库:



查看本地仓库镜像的信息:



获取本地镜像:

[root@bfd-v7 ~]# docker pull 192.168.12.5:5000/tomcat:v2




3、push一个docker镜像到DockerHub上

有时候想要保存自己的docker镜像,又不想自己搭建docker registry,那么就可以了借用DockerHub来用。

在DockerHub上创建账号:https://hub.docker.com/

这里我的账号是leidy。



#拿本地的mysql的镜像进行tag。
[root@bfd-v7 ~]# docker tag mysql leidy/mysql:v1
[root@bfd-v7 ~]# docker push leidy/mysql:v1


如下图所示:



最后我们在dockerhub上看一下:



再从dockerhub上pull下来:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: