本次实验的目标是在上安装Docker私有镜像库。
- 拉取官方Registry镜像最新版,执行
1 | docker pull registry:2 |
- 在本地建立名为 docker_registry 的镜像保存目录
1 | mkdir ~/docker |
- 编辑镜像库配置文件(使用文本编辑器), 内容如下:
1 | version: 0.1 |
- 启动镜像库容器,并映射目录和配置文件
1 | docker run --name MyRegistry -d -p 5000:5000 -v /home/stu/docker/registry/data:/var/lib/registry -v /home/stu/docker/registry/config/config.yml:/etc/docker/registry/config.yml registry:2 |
- 验证安装
使用浏览器访问:
1 | http://localhost:5000/v2/_catalog |
或是执行:
1 | curl http://localhost:5000/v2/_catalog |
- 修改本地docker 设置文件 /etc/docker/daemon.json
加入http的本地镜像库访问
1 | sudo vi /etc/docker/daemon.json |
加入如下设置:
“insecure-registries”: [“localhost:5000”]
注意,用你的实际ip替换 localhost
加入以后的文件内容为:
1 | { |
重启docker
1 | sudo systemctl restart docker |
- 上传镜像到本地私有库中
1 | docker tag alpine-base localhost:5000/alpine-base |
- 验证上传
使用浏览器访问:
1 | http://localhost:5000/v2/_catalog |
再访问
1 | http://localhost:5000/v2/apline-base/tags/list |
- 从私有库拉取镜像
首先,删除本地的 alpine-base 镜像
1 | docker rmi alpine-base |
执行以下命令拉取私有库镜像
1 | docker pull localhost:5000/alpine-base |
执行 docker images 命令查看结果