搭建Docker私服

搭建Docker私服

资源

  • Centos7.7
  • Docker基础环境 Docker-CE 18.09.0
  • joxit/docker-registry-ui:1.4
  • registry:2

部署步骤

  • 安装registry

    • 拉取镜像

      docker pull registry:2
      
    • 配置文件config.yml,路径/opt/docker-wk/ncpkregistry/conf/config.yml

    # cat config.yml 
    version: 0.1
    log:
      fields:
        service: registry
    storage:
      cache:
        blobdescriptor: inmemory
      filesystem:
        rootdirectory: /var/lib/registry
    http:
      addr: :5000
      headers:
        X-Content-Type-Options: [nosniff]
        Access-Control-Allow-Origin: ['*']
        Access-Control-Allow-Methods: ['*']
        Access-Control-Max-Age: [1728000]
    health:
      storagedriver:
        enabled: true
        interval: 10s
        threshold: 3
    
    • 启动脚本
# cat run.sh 
#!/bin/bash
# -----------------------------------------------------------------
# Date: 2020-04-13
# Author: jiftle
# Description: 启动脚本
# -----------------------------------------------------------------
DockerTitle="Docker私服"
DockerName="registry:2"

RootDir="/opt/docker-wk"

echo "  |--> [${DockerTitle}(${DockerName})] 开始启动"

docker run -d 
  --name="ncpkregistry" 
  -v ${RootDir}/ncpkregistry/config/config.yml:/etc/docker/registry/config.yml 
  -v ${RootDir}/ncpkregistry/repo:/var/lib/registry 
  -p 5000:5000 
  --restart=always 
  ${DockerName}
echo "  |--> [${DockerTitle}(${DockerName})] 启动完毕"
  • 安装docker-registry-ui
    • 拉取镜像

      docker pull joxit/docker-registry-ui:1.4
      
    • 配置文件,Registry2的配置文件中增加如下字段

      http:
        headers:
          Access-Control-Allow-Origin: ['*']
          Access-Control-Allow-Methods: ['*']
          Access-Control-Max-Age: [1728000]
      
    • 启动

# cat ncpkregistry-ui/run.sh
#!/bin/bash
# -----------------------------------------------------------------
# Date: 2020-04-13
# Author: jiftle
# Description: 启动脚本
# -----------------------------------------------------------------
DockerTitle="Docker私服"
DockerKey="ncp-kms-registry:5000/joxit/docker-registry-ui:1.4"
DockerName="ncpkregistry-ui"

RootDir="/opt/docker-wk"

echo "  |--> [${DockerTitle}(${DockerName})] 开始启动"

docker run -d 
  --name="${DockerName}" 
  -p 30081:80 
  --restart=always 
  ${DockerKey}
echo "  |--> [${DockerTitle}(${DockerName})] 启动完毕"

  - 浏览看效果

    ```
    http://ncp-kms-registry:30081/
    右上角菜单,添加 http://ncp-kms-registry:5000/
    页面就可以显示私服的镜像了
    ```
原文地址:https://www.cnblogs.com/jiftle/p/12759371.html