Docker容器

使用 Docker Compose 搭建 Registry 镜像管理平台及使用配置

本文主要是介绍使用 Docker Compose 搭建 Registry 镜像管理平台及使用配置,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Docker Registry 简介

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

安装 Docker Registry

  • 创建 docker-compose.yml

    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

    $ docker-compose up -d
  • 访问:http://{ip}:5000/v2/

安装 Docker Registry UI

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

  • 创建 docker-compose.yml

    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={docker registy ip}
          - ENV_DOCKER_REGISTRY_PORT={docker registy port}

    上述文件需要自定义修改的配置

    • ENV_DOCKER_REGISTRY_HOST:安装的 Docker Registry 访问 IP

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

  • 启动 Docker Ccompose

    $ docker-compose up -d
  • 访问 http://{ip}:8080](http://{ip}:8080

    • 首页
      image

    • 镜像列表页
      image

Linux 配置 Docker Registry

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

    $ vi /etc/docker/daemon.json

    完整文件如下:

    {
      "registry-mirrors": [
        "{镜像加速器地址}"
      ],
      "insecure-registries": [
        "{docker registry ip}:5000"
      ]
    }
  • 重启服务

    $ sudo systemctl daemon-reload
    $ sudo systemctl restart docker
  • 检查配置是否生效

    $ docker info

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

    Insecure Registries:
     {docker registry ip}:5000
     127.0.0.0/8

测试推送镜像

  • 从 Docker Hub 公网拉取一个镜像

    $ docker pull tomcat
  • 标记该镜像指向Docker Registry 私服仓库

    $ docker tag tomcat {docker registry ip}:5000/tomcat
  • 推送镜像到仓库

    $ docker push {docker registry ip}:5000/tomcat

测试拉取镜像

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

    $ docker image rm {docker registry ip}:5000/tomcat
  • 从 Docker Registry 私服中拉取镜像

    $ docker pull {docker registry ip}:5000/tomcat

END

  • 文章作者:彭超

  • 版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 彭超 | Blog!

这篇关于使用 Docker Compose 搭建 Registry 镜像管理平台及使用配置的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!