18.Docker私库安装

前置参见:3.Ubuntu 16.04.6 离线安装 docker

开始配置第一台Docker私有仓库服务器

拉取镜像

docker pull registry

 查看镜像是否已经成功获取

运行镜像

docker run -tid --name registry --restart=always -p 5000:5000 -v /data/registry:/var/lib/registry registry

#运行该镜像,各个选项含义如下:

# -tid:以后台持久运行,并分配一个可交互的为终端

# --name registry :给容器定义一个名字

# --restart=always:该容器可以随着docker服务的启动而启动

# -p:将容器的端口映射到宿主机,冒号前面是宿主机的端口,冒号后面是容器的端口,registry的默认端口是5000

# -v:将宿主机的目录挂载到容器中,冒号前面是宿主机的目录,冒号后面是容器中的目录

查看docker运行的镜像

docker ps

 至此仓库搭建完成

 解决私库https无法访问问题

若是没有 /etc/docker/daemon.json 这个文件,就新建一个


状况1.这种写法是没有配置Docker加速器的状况下

// 单个私服的写法
{
    "insecure-registries": ["registry的IP地址:端口号"]
}
// 多个私服的写法
{
    "insecure-registries": ["registry1的IP地址:端口号","registry2的IP地址:端口号"]
}

状况2.这种写法是配置过Docker加速器的状况

// 单个私服的写法
{
    "registry-mirrors": ["http://f1361db2.m.daocloud.io"],
    "insecure-registries": ["registry的IP地址:端口号"]
}
// 多个私服的写法
{
    "registry-mirrors": ["http://f1361db2.m.daocloud.io"],
    "insecure-registries": ["registry1的IP地址:端口号","registry2的IP地址:端口号"]
}
 

修改好以后

systemctl daemon-reload
systemctl restart docker.service
systemctl enable docker.service

上传镜像

要上传镜像到私有仓库,需要在镜像的 tag 上加入仓库地址:

docker tag jboss  192.168.88.85:5000/jboss:v1
docker push 192.168.88.85:5000/jboss:v1

拉取镜像

docker pull 192.168.88.85:5000/jboss:v1

查看私库镜像

curl http://192.168.88.85:5000/v2/_catalog
原文地址:https://www.cnblogs.com/ff111/p/14956180.html