本次实验操作系统版本
[root@node02 ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
docker版本
[root@node02 ~]# docker -v
Docker version 18.06.3-ce, build d7080c1
使用docker compose安装docker镜像一个很大的好处是不用记住很长的原生docker命令,因为可以把这些命令记录到compose的配置文件中。
原生的安装私有镜像和镜像web步骤可以参考如下:
registry和registry web采用了前后端分离的方式,所以需要启动两个容器
【安装私有镜像仓库-docker-registry+docker-registry-web(镜像仓库+镜像仓库管理界面)】https://blog.csdn.net/liuming690452074/article/details/105619629
安装docker-compose
【docker-compose安装教程】https://blog.csdn.net/qq_33581509/article/details/115585426
registry 的docker-compose配置文件(registry.yml)
version: "3.8"
services:
registry:
image: registry
container_name: registry
ports:
- "5000:5000"
volumes:
- "/data/registry:/var/lib/registry"
networks:
- kanan_net #@D
networks:
kanan_net: #@C
version: "3.8"
services:
registry_web:
image: hyper/docker-registry-web
container_name: registry_web #@A
ports:
- "5001:8080"
environment: #@B
- REGISTRY_URL=http://192.168.126.99:5000/v2
- REGISTRY_NAME=192.168.126.99:5000
- REGISTRY_READONLY=false
volumes:
- "/data/registry:/var/lib/registry"
networks:
- kanan_net #@D
networks:
kanan_net: #@C
注:
@A:容器名称可以自定义
@B:web前端项目启动所需的环境变量
@C:让该compose加入一个名字叫kanan_net的网络,该网络是使用docker network creat xxx 创建的网络,这样就可以不用 --link的写法解决网络问题
@D:指定registry_web的service使用kanan_net网络
docker -compose -f registry.yml up -d
docker -compose -f web.yml up -d