CentOS7搭建Docker私有仓库
(一)前言
1.什么是Docker私有仓库Registry
官方的Docker hub是一个用于管理公共镜像的好地方,我们可以在上面找到我们想要的镜像,也可以把我们自己的镜像推送上去。但是,有时候我们的服务器无法访问互联网,或者你不希望将自己的镜像放到公网当中,那么你就需要Docker Registry,它可以用来存储和管理自己的镜像。
2.准备环境
192.168.84.104(服务端)
192.168.84.100(客户端)
3.版本
CentOS Linux release 7.4.1708
Docker 18.03.1-ce
(二)服务端操作
执行以下命令安装Docker:
yum remove -y docker docker-common docker-selinux docker engine
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum makecache fast
yum install -y docker-ce
安装好之后,启动Docker,并加入开机启动:
systemctl start docker.service
systemctl enable docker.service
停止并关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
拉取本地私有仓库
docker pull registry
查看本地镜像
docker images
基于私有仓库镜像运行容器
docker run -it -d -p 5000:5000 --name registry registry
或者通过以下命令运行
docker run -d -v /home/docker/registry:/var/lib/registry -p 5000:5000 --restart=always --privileged=true --name registry registry:latest
查看是否启动成功
[root@swarm4 docker]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
bf15afdcd480 registry "/entrypoint.sh /etc…" 2 hours ago Up About an hour 0.0.0.0:5000->5000/tcp registry
然后访问: http://192.168.84.104:5000/v2/ 出现如下数据说明启动成功
从 Docker 私有仓库上拉取一个镜像测试
docker pull nginx
创建镜像链接为基础镜像打个标签
docker tag nginx 192.168.84.104:5000/nginx
上传镜像到本地仓库
docker push 192.168.84.104:5000/nginx
查看私有仓库镜像
http://192.168.84.104:5000/v2/nginxbox/tags/list
(三)客户端操作
前几步和上面一样,需要先安装Docker,并启动Docker,然后修改Docker配置文件(没有则创建):
vim /etc/docker/daemon.json
加入私有仓库的地址:
{
"insecure-registries":["192.168.84.104:5000"]
}
重启 docker 服务
systemctl daemon-reload
systemctl restart docker
测试从私有仓库中拉取 nginx 镜像
docker pull 192.168.84.104:5000/nginx
查看镜像
docker images
还没有评论,来说两句吧...