Docker Registry 镜像私服的部署

Posted by 彭楷淳 on 2020-08-02
Estimated Reading Time 2 Minutes
Words 556 In Total
Viewed Times

Docker Registry 简介


Docker Hub 是 Docker 官方提供的一个管理公共镜像的镜像仓库,我们可以从上面拉取我们想要的镜像,也可以推送自己的镜像上去。但有时候,在无法访问互联网的情况下或者不希望将自己的镜像推送到公网上时,那么 Docker Registry (镜像私服)就可以用来存储管理自己的镜像。

部署 Docker Registry


使用 Docker Compose 编排部署应用容器。服务器地址:192.168.100.1

创建 docker-compose.yml

1
2
3
4
5
6
7
8
9
10
version: '3.1'
services:
registry:
image: registry
restart: always
container_name: registry
ports:
- 5000:5000
volumes:
- /usr/local/docker/registry/data:/var/lib/registry

启动 docker compose

1
$ docker-compose up -d

访问地址:http://192.168.100.1:5000/v2/

配置 Docker Registry

Docker Registry 服务启动以后还需要以下配置:

编辑 daemon.json (如果不存在则新建)

1
$ vi /etc/docker/daemon.json

完整文件如下:

1
2
3
4
5
6
7
8
{
"registry-mirrors": [
"{镜像加速器地址}"
],
"insecure-registries": [
"{docker registry ip}:5000"
]
}

重启服务

1
$ sudo systemctl daemon-reload
1
$ sudo systemctl restart docker

检查配置是否生效

1
$ docker info

出现以下内容,说明配置成功

1
2
Insecure Registries:
192.168.100.1:5000

部署 Docker Registry UI


Docker Registry 安装成功之后,不太方便只管地查看仓库中的镜像,可以使用 Web UI 界面工具管理镜像,docker-registry-frontend 就是其中之一

创建 docker-compose.yml

1
2
3
4
5
6
7
8
9
10
11
12
version: '3.1'
services:
frontend:
image: konradkleine/docker-registry-frontend:v2
ports:
- 8080:80
volumes:
- ./certs/frontend.crt:/etc/apache2/server.crt:ro
- ./certs/frontend.key:/etc/apache2/server.key:ro
environment:
- ENV_DOCKER_REGISTRY_HOST=192.168.100.1
- ENV_DOCKER_REGISTRY_PORT=5000

上述文件需要修改的配置:

  • ENV_DOCKER_REGISTRY_HOST:安装的 Docker Registry 访问 IP

  • ENV_DOCKER_REGISTRY_PORT:安装的 Docker Registry 访问端口

启动 Docker Ccompose

1
$ docker-compose up -d

访问地址:http://192.168.100.1:8080

首页

镜像列表页

推送镜像


从 Docker Hub 公网拉取一个镜像

1
$ docker pull tomcat

标记该镜像指向Docker Registry 私服仓库

1
$ docker tag tomcat 192.168.100.1:5000/tomcat

推送镜像到仓库

1
$ docker push 192.168.100.1:5000/tomcat

拉取镜像


删除从 Docker Hub 公网上拉取的镜像

1
$ docker image rm 192.168.100.1:5000/tomcat

从 Docker Registry 私服中拉取镜像

1
$ docker pull 192.168.100.1:5000/tomcat

更多干货请移步:https://antoniopeng.com


If you like this blog or find it useful for you, you are welcome to comment on it. You are also welcome to share this blog, so that more people can participate in it. If the images used in the blog infringe your copyright, please contact the author to delete them. Thank you !