docker

Docker-仓库

2018-05-17  本文已影响36人  yuanzicheng

Docker仓库用于镜像的存储,是镜像分发、部署的关键。

Docker官方提供了公有仓库Docker Hub,国内也有一些公有仓库,我们也可以自己搭建私有的Docker仓库。

1.Docker Hub

Docker默认使用官方的公有仓库Docker Hub,搜索、下载镜像无需账号,上传镜像则需要账号认证。

相关命令

# 登录Docker Hub
docker login
# 上传镜像
docker push IMAGE:VERSION
# 搜索镜像
docker search IMAGE
# 下载镜像
docker pull IMAGE

2.私有仓库

某些场景下,由于网络、安全、网速等原因,公有仓库并不合适,我们需要构建自己的私有仓库。Docker官方提供了docker-registry组件,方便我们快速构建私有镜像。需要注意的是docker-registry现在已经更新到v2版本,并且使用了新的项目名称docker-distribution

2.1 镜像方式构建私有仓库

Docker官方提供了docker-registry的镜像,直接使用该镜像是最简单的方式。使用以下命令,Docker会自动从Docker Hub拉取docker-registry的镜像,然后启动docker-registry服务,docker-registry默认监听5000端口。

docker run -d -p 5000:5000 --restart always --name registry registry:2

如果需要设置环境变量,可以使用-e设置参数。

2.2 RPM包方式构建私有仓库

EPEL中已经包含docker-registry的包,通过yum工具可以直接安装。

yum install -y docker-distribution

启动服务、查看服务状态

systemctl start docker-distribution && systemctl status docker-distribution
2.3 构建安全的私有仓库

To be continued...

2.4 使用私有仓库

查看Registry中所有镜像信息(以下示例中,假定私有仓库的ip地址为192.168.100.101)

curl http://192.168.100.101:5000/v2/_catalog

上传镜像

docker push 192.168.100.101:5000/<image>:latest

从私有仓库下载镜像

docker pull 192.168.100.101:5000/<image>:latest

从私有仓库pull镜像并启动

docker run -it 192.168.100.101:5000/<image>:latest
上一篇 下一篇

猜你喜欢

热点阅读