liunx 安装 Docker Private Registry 和 Web UI

一、环境信息:

操作系统:liunx
Docker版本:19.03.5 (其他版本应该类似)、下载docker-compose
registry:latest
registry-web: hyper/docker-registry-web:latest
ip:10.10.10.10
port:8081 web端口 5000服务端口

二、搭建过程

先建一个文件夹registry ,这个将作为根文件夹。进入这个文件夹:
registry: /usr/local/registry/

1、创建相关文件夹
mkdir -p /usr/local/registry/conf/registry   #存放仓库的配置信息
mkdir -p /usr/local/registry/conf/registry-web #存放仓库UI界面的配置信息
mkdir -p /usr/local/registry/registry  #存放仓库的镜像
mkdir -p /usr/local/registry/db  #仓库的访问信息
2、生成证书
openssl req -new -newkey rsa:4096 -days 365 \
                -subj "/CN=172.28.162.113" \
                -nodes -x509  \
                -keyout /usr/local/registry/conf/registry-web/auth.key \
                -out /usr/local/registry/conf/registry/auth.cert
3、创建仓库的配置文件
vi /usr/local/registry/conf/registry/config.yml

内容如下:

version: 0.1
 
storage:
  filesystem:
    rootdirectory: /var/lib/registry
 
http:
  addr: 0.0.0.0:5000
 
auth:
  token:
    realm: http://10.10.10.10:8081/api/auth
    service: 10.10.10.10:5000
    issuer: 'admin'
    rootcertbundle: /etc/docker/registry/auth.cert
4、创建仓库UI的配置文件
vi /usr/local/registry/conf/registry-web/config.yml

内容如下:

registry:
    url: http://10.10.10.10:5000/v2
    name: 10.10.10.10:5000
    readonly: false
    auth:
        enabled: true
        issuer: 'admin'
        key: /conf/auth.key
5、创建docker-compose启动配置文件
version: '3'
services:
  registry-web:
    image: hyper/docker-registry-web:latest
    ports:
      - 8081:8080
    volumes:
        - /usr/local/registry/conf/registry-web:/conf:ro
        - /usr/local/registry/db:/data
    depends_on:
      - registry
    restart: always
  registry:
    image: registry:last
    ports:
      - 5000:5000
    volumes:
      - /usr/local/registry/conf/registry:/etc/docker/registry:ro
      - /usr/local/registry/registry:/var/lib/registry
    environment:
      - REGISTRY_STORAGE_DELETE_ENABLED=true
    restart: always
6、通过docker-compose拉取镜像启动容器
docker-compose up -d 

到此所有的搭建已经结束。

三、简单使用

访问:ip:8081
image.png
输入账号密码登录,默认是admin/admin,可以登录后修改,默认账号只有ui的管理功能,如果需要push功能还需要自己配置权限。
image.png

image.png

四、常用命令

1、登陆
docker login [option] [server]

option列表如下:

  • -password, -p:密码
  • -password-stdin:从标准输入中读取密码
  • -username, -u:用户名

例如:

docker login 10.10.10.10:5000
2、tag
docker tag old-image[:old-tag] new-image[:new-tag]

例如:

docker tag nginx 10.10.10.10:5000/nginx:v1

3、push

docker push [OPTIONS] NAME[:TAG]

例如:

docker push nginx 10.10.10.10:5000/nginx:v1

Copyright: 采用 知识共享署名4.0 国际许可协议进行许可

Links: https://www.fengpt.cn/archives/liunx安装dockerprivateregistry和webui