1 安装
1 创建和进入安装目录
mkdir -p /usr/local/docker/registry && cd /usr/local/docker/registry
2 新增compose文件
vi docker-compose.yml
3 增加文件内容
这里采用了registry的前端管理工具fronted,便于查看镜像信息,直接在浏览器输入ip和端口即可
镜像参考网址:https://hub.docker.com/
version: '3'
services:
registry:
restart: always
image: registry
container_name: registry
ports:
- 5000:5000
volumes:
- ./data:/var/lib/registry
frontend:
image: konradkleine/docker-registry-frontend:v2
environment:
- ENV_DOCKER_REGISTRY_HOST=192.168.30.143
- ENV_DOCKER_REGISTRY_PORT=5000
ports:
- 81:80
volumes:
- ./certs/fronted.crt:/etc/apache2/server.crt:ro
- ./certs/fronted.key:/etc/apache2/server.key:ro
4 启动容器
docker-compose up -d
5 查看
- 配置fronted时查看镜像信息,直接在浏览器输入
http://192.168.30.143:81
即可访问
#查看全部镜像
curl -XGET http://192.168.30.143:5000/v2/_catalog
#查看指定镜像
curl -XGET http://192.168.30.143:5000/v2/registry/tags/list
2 配置
2.1 客户端配置私服仓库
1 进入配置目录,修改配置文件
cd /etc/docker && vi daemon.json
2 配置文件中增加内容
"insecure-registries": [
"192.168.30.143:5000"
]
3 重启验证(重启前确认没有容器运行)
systemctl restart docker && docker info
3 拉取和推送
3.1 从仓库拉取镜像
docker pull registry
3.2 推送镜像到仓库
1 标记本地镜像指向目标仓库
#标记命令
docker tag registry 192.168.30.143:5000/registry:latest
#重命名镜像命令(可不用)
docker tag imageName imageName:tag
2 推送本地镜像到目标仓库
docker push 192.168.30.136:5000/registry:latest