目录
一. 搭建本地私有仓库
1.1 安装docker-ce
安装docker-ce的步骤参考以下链接
https://editor.csdn.net/md/?articleId=109626644
1.2 下载私有仓库核心镜像
docker pull registry
[root@gsy ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
registry latest 708bc6af7e5e 2 months ago 25.8MB
1.3 编辑守护进程文件,添加本地仓库IP,然后重启docker
修改/etc/docker/daemon.json 文件
加入"insecure-registries":["12.0.0.22:5000"],注意之间的逗号
vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://caws71zg.mirror.aliyuncs.com"],
"insecure-registries":["12.0.0.22:5000"]
}
systemctl restart docker
注意:重启完后:所有的容器都会被释放掉,变成exited状态
1.4 运行容器registry仓库
docker run -d -p 5000:5000 -v /data/registry:/tmp/registry registry
//安装的registry镜像制作成容器时需要提供空间给容器,否则私有仓库不能开启,即需要与宿主机挂载数据卷
错误:docker create -it registry /bin/bash
docker ps -a
38fb4a0c709d registry "/entrypoint.sh /bin…" 3 minutes ago Exited (127) 2 minutes ago pedantic_borg
无法docker start 成功
1.5 上传镜像到镜像仓库
上传私有仓库时,必须要更改标签,标签的格式有规定 先是IP地址:端口号/镜像名
因为在daemon.json 里指定了私有仓库的IP:端口
#更改标签:docker tag nginx:latest 12.0.0.22:5000/nginx_hz
#镜像上传:docker push 12.0.0.22:5000/nginx_hz
#查看镜像仓库中的镜像:curl -XGET http://12.0.0.22:5000/v2/_catalog
{"repositories":["nginx"]}
二. 设置本地镜像仓库
- 下载registry镜像
- 生成registry容器,开放5000端口,并映射出去
- 客户端设置daemon.json文件 指定私有仓库位置
- 将要上传的镜像打标签 仓库IP:端口/镜像名
- 上传镜像 docker push 仓库IP:端口/镜像名
- 下载镜像 docker pull 仓库IP:端口/镜像名