Docker学习之私有仓库(day10)
文章目录
- Docker学习之私有仓库(day10)
- 前言
- 一、问题描述
- 二、具体内容
- 1. 私有仓库搭建
- 1.1 拉取私有仓库镜像
- 1.2. 启动私有仓库容器
- 1.3. 验证私有仓库是否搭建成功
- 1.4 配置 Docker 信任私有仓库
- 2. 将镜像上传至私有仓库
- 2.1 标记镜像为私有仓库的镜像
- 2.2 上传标记的镜像
- 3. 从私有仓库拉取镜像
- 三、总结
前言
在使用 Docker 的过程中,默认的镜像仓库是 Docker Hub,但有时候我们希望搭建自己的私有仓库,来存储和管理自己的镜像。本文将介绍如何搭建 Docker 私有仓库,并演示镜像的上传和拉取操作。
一、问题描述
在企业或团队开发过程中,出于安全性或效率考虑,我们通常需要搭建自己的 Docker 私有仓库,而不是使用公共的 Docker Hub。本篇文章将介绍如何搭建 Docker 私有仓库,并进行镜像的上传和下载。
二、具体内容
1. 私有仓库搭建
Docker 提供了 registry
作为官方的私有仓库实现,我们可以使用以下命令快速搭建一个私有仓库:
1.1 拉取私有仓库镜像
docker pull registry
1.2. 启动私有仓库容器
docker run -id --name=registry -p 5000:5000 registry
这将会启动一个监听 5000
端口的私有仓库。
1.3. 验证私有仓库是否搭建成功
打开浏览器,输入 http://私有仓库服务器ip:5000/v2/_catalog
,如果返回 {"repositories":[]}
,则表示私有仓库搭建成功。
私有仓库服务器ip查询:
ip a
1.4 配置 Docker 信任私有仓库
编辑 Docker 配置文件:
sudo nano /etc/docker/daemon.json
在上述文件中添加以下内容(请将 私有仓库服务器ip
替换为真实的 IP 地址):
{"insecure-registries": ["私有仓库服务器ip:5000"]
}
保存并退出后,重启 Docker 服务并启动私有仓库:
systemctl restart docker
docker start registry
2. 将镜像上传至私有仓库
2.1 标记镜像为私有仓库的镜像
docker tag test_tomcat:1.0 私有仓库服务器IP:5000/test_tomcat:1.0
2.2 上传标记的镜像
docker push 私有仓库服务器IP:5000/test_tomcat:1.0
上传完成后,我们可以查看仓库中的镜像:
curl http://私有仓库服务器ip:5000/v2/_catalog
3. 从私有仓库拉取镜像
为了验证是否成功拉取,先将192.168.1.131:5000/test_tomcat:1.0删除:
docker rmi 私有仓库服务器ip:5000/test_tomcat:1.0
如果要从私有仓库拉取镜像,首先需要确保本地已经启动 registry
,然后执行:
docker pull 私有仓库服务器ip:5000/test_tomcat:1.0
之后,我们可以使用 docker images
命令查看本地镜像。
三、总结
- Docker 提供了
registry
作为官方的私有仓库方案。 - 通过
docker tag
给镜像打上私有仓库的标签,然后使用docker push
上传镜像。 - 通过
docker pull
拉取私有仓库中的镜像。 - 可以使用
curl http://私有仓库服务器ip:5000/v2/_catalog
查看仓库中的镜像。 - 需要在
daemon.json
文件中添加insecure-registries
以信任私有仓库地址,并重启 Docker 服务。
私有仓库的搭建可以提高安全性和效率,在企业内部开发中是非常常见的方案。