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

猜你喜欢

转载自blog.csdn.net/u011781521/article/details/80206649