吴晓阳
发布于 2024-11-20 / 38 阅读
0

docker私有注册表

使用docker创建私有注册表

version: "3"
services:
  proxy:
    image: nginxproxy/nginx-proxy
    container_name: nginx-proxy
    restart: always
    ports:
      - 80:80
      - 443:443
    labels:
      com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy: "true"
    volumes:
      - ./nginx-proxy/certs:/etc/nginx/certs:ro
      - ./nginx-proxy/config/nginx/conf.d:/etc/nginx/conf.d
      - ./nginx-proxy/acme:/acmecerts
      - ./nginx-proxy/vhost.d:/etc/nginx/vhost.d
      - ./nginx-proxy/html:/usr/share/nginx/html
      - /var/run/docker.sock:/tmp/docker.sock:ro
    networks:
      - default

  registry:
    image: registry:2
    container_name: registry
    privileged: true
    restart: always
    tty: true
    environment:
    - VIRTUAL_HOST=reg.wxy.ink
    - VIRTUAL_PORT=5000
    - REGISTRY_AUTH=htpasswd  
    - REGISTRY_AUTH_HTPASSWD_REALM=Registry  Realm  
    - REGISTRY_AUTH_HTPASSWD_PATH=/var/lib/registry/htpasswd
    volumes:
    - /etc/localtime:/etc/localtime
    - /etc/default/locale:/etc/default/locale
    - /data/registry:/var/lib/registry

registry-web:  
  image:  hyper/docker-registry-web:latest  
  container_name:  registry-web  
  environment:  
  -  VIRTUAL_HOST=regweb.lczs.net  
  -  VIRTUAL_PORT=8080  
  -  TZ="Asia/Shanghai"    
  -  registry_url=http://registry:5000/v2  
  -  registry_name=reg.lczs.net  
  -  REGISTRY_TRUST_ANY_SSL=true  
  -  REGISTRY_BASIC_AUTH=d3h5Ond4eQ==  #注册表登录密码的base64编码,比如:wxy:wxy的base64编码
  restart:  always  
  volumes:  
  -  /etc/timezone:/etc/timezone:ro  
  -  /etc/localtime:/etc/localtime:ro  
  -  /data/registry:/var/lib/registry

查看私有注册表中的镜像

curl -X GET https://reg.wxy.ink/v2/_catalog

curl -X GET https://reg.wxy.ink/v2/snowdreamtech/frpc/tags/list

在 Ubuntu 或者 Debian 上,你可以使用以下命令来安装 Apache2 Utils 软件包,其中包含了 htpasswd 工具:

sudo apt update
sudo apt install apache2-utils
htpasswd -cB /data/registry/htpasswd wxy

作者

吴晓阳(手机:13736969112微信同号)