docker-compose简单使用。同时启动私有仓库与私有仓库管理ui 电脑版发表于:2022/5/26 19:20 docker-compose的安装可以参考: https://www.tnblog.net/aojiancc2/article/details/7679 #### docker-compose 介绍 tn2> 如果涉及多个容器的运行(如服务编排)就可以通过 docker-compose 来实现,它可以轻松的将多个容器作为 service 来运行(当然也可仅运行其中的某个),并且提供了 scale (服务扩容) 的功能。方便多多个容器一键管理,比如微服务的项目发布,会涉及到很多个模块,如果一个一个容器去启动会很麻烦,使用docker-compose就可以很方便的一键启动n个服务。 tn4>就算是针对单个容器的更新也不用每次都去执行编译镜像,停止与删除容器,然后重新启动容器这样就有点麻烦了,如果用docker-compose一句话就可以操作了,这还是针对单个容器的,如果是多个容器管理起来比单个一个一个执行就方便太多了。 tn3> docker-compose 可以记录你启动容器时候的命令,方便随时修改。而且复杂一点的命令代码可读性也更高。容器之间的依赖关系,比较清晰,比一个一个的手动使用命令启动要清晰很多。其实主要就是方便后期的维护和管理。 #### 拉取私有仓库docker-registry-ui镜像 ``` docker pull joxit/docker-registry-ui:latest ``` #### 给registry创建一个配置文件,主要是配置允许跨域 启动跨域后,私有仓库的ui框架才能顺利通过registry提供的接口拿到数据,不然会报跨域的错误。 当然也可以启动registry容器后,在进入容器里边进行跨域设置。 ``` mkdir -p /etc/docker/registry cat > /etc/docker/registry/config.yml <<EOF version: 0.1 log: accesslog: disabled: true level: debug formatter: text fields: service: registry environment: staging storage: delete: enabled: true cache: blobdescriptor: inmemory filesystem: rootdirectory: /var/lib/registry http: addr: :5000 headers: X-Content-Type-Options: [nosniff] Access-Control-Allow-Origin: ['http://192.168.6.226'] Access-Control-Allow-Methods: ['HEAD', 'GET', 'OPTIONS', 'DELETE'] Access-Control-Allow-Headers: ['Authorization', 'Accept'] Access-Control-Max-Age: [1728000] Access-Control-Allow-Credentials: [true] Access-Control-Expose-Headers: ['Docker-Content-Digest'] http2: disabled: false health: storagedriver: enabled: true interval: 10s threshold: 3 EOF ``` #### 使用docker-compose同时启动这两个容器即可 ``` cat > docker-compose.yaml <<EOF version: '2.0' services: registry: image: registry:2.8.1 ports: - 5000:5000 volumes: - /opt/registry:/var/lib/registry - /etc/docker/registry/config.yml:/etc/docker/registry/config.yml ui: image: joxit/docker-registry-ui:latest ports: - 80:80 environment: - REGISTRY_TITLE=My Private Docker Registry - REGISTRY_URL= http://192.168.6.226:5000 - SINGLE_REGISTRY=true depends_on: - registry EOF docker-compose up -d ``` 启动成功后,访问 http://192.168.6.226即可查看私有镜像仓库的ui。 **停止docker-compose的启动** ``` docker-compose down ``` #### 打tag在上传一个镜像 打tag ``` docker tag registry 192.168.6.226:5000/registry:latest ``` ![](https://img.tnblog.net/arcimg/aojiancc2/e23fb079f6a5492f8b13f040bc920952.png) 上传镜像到私有仓库 ``` docker push 192.168.6.226:5000/registry:latest ``` ![](https://img.tnblog.net/arcimg/aojiancc2/0472916b83114ca396bd3b93f77e4559.png) 然后就可以看到刚刚上传的镜像了 ![](https://img.tnblog.net/arcimg/aojiancc2/5f164c3d331f4919b464dba2706b9a95.png) #### 简单视频教程 链接: https://pan.baidu.com/s/1QRXrbHbVa3h5ICtl8nvhEA?pwd=3itc 提取码: 3itc 复制这段内容后打开百度网盘手机App,操作更方便哦