#部署docker-registry+ui shell

docker registry 配置域名证书, 用户密码认证, 轻量UI

ansible部署docker-registry+ui https://www.cnblogs.com/elvi/p/13394492.html


#!/bin/bash
#run.docker-registry.sh
#部署docker registry +ui
# By Elvin #目录
data_dir=/data/docker/docker-registry
mkdir -p $data_dir
cd $data_dir #域名证书(使用我的证书为例)
domain_name=hub.elvin.vip
download_url=http://files.elvin.vip/docker
if [ ! -e ${domain_name}_private.key -o ! -e ${domain_name}_private.key ];then
curl -so hub.elvin.vip_private.key ${download_url}/${domain_name}_private.key
curl -so hub.elvin.vip_full_chain.pem ${download_url}/${domain_name}_full_chain.pem
fi #创建密码文件,用户admin 密码 docker
docker run --rm alivv/htpasswd admin docker >htpasswd #创建网络 registry-net
if [ $(docker network ls |grep registry-ui-net |wc -l) -ne 1 ];then
docker network create --subnet 10.20.20.0/24 --gateway 10.20.20.1 registry-net
fi #registry-srv
docker rm -f registry-srv &>/dev/null
docker run -dit --name registry-srv \
--privileged=true --restart=always \
--net registry-net -p 443:443 \
--memory 512M \
-v $data_dir:/var/lib/registry \
-v /etc/localtime:/etc/localtime:ro \
-e REGISTRY_AUTH=htpasswd \
-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
-e REGISTRY_AUTH_HTPASSWD_PATH=/var/lib/registry/htpasswd \
-e REGISTRY_HTTP_ADDR=0.0.0.0:443 \
-e REGISTRY_STORAGE_DELETE_ENABLED=true \
-e REGISTRY_HTTP_TLS_KEY=/var/lib/registry/hub.elvin.vip_private.key \
-e REGISTRY_HTTP_TLS_CERTIFICATE=/var/lib/registry/hub.elvin.vip_full_chain.pem \
registry #registry-ui
docker rm -f registry-ui &>/dev/null
docker run -d --name registry-ui \
--restart=always \
--memory 64M \
--net registry-net -p 80:80 \
-v /etc/localtime:/etc/localtime:ro \
-e REGISTRY_URL=https://registry-srv:443 \
-e PULL_URL=${domain_name} \
-e DELETE_IMAGES=true \
-e REGISTRY_TITLE="Docker registry" \
joxit/docker-registry-ui:1.3-static

#docker pull images

#下载images
docker pull alpine
docker pull alpine:3.12 #docker tag 添加仓库前缀地址
docker tag alpine hub.elvin.vip/demo/alpine
docker tag alpine:3.12 hub.elvin.vip/demo/alpine:3.12 #登录
docker login hub.elvin.vip #images push
docker push hub.elvin.vip/demo/alpine
docker push hub.elvin.vip/demo/alpine:3.12

#浏览器登录查看


#remove demo
docker rm -f registry-srv
docker rm -f registry-ui
docker network rm registry-ui-net

registry非本机,设置hosts解析 ip hub.elvin.vip

Docker Registry UI 当前最新版1.5, 界面有改动,显示pull hash值

github https://github.com/Joxit/docker-registry-ui

部署docker-registry+ui shell 域名证书-用户认证的更多相关文章

  1. 局域网内部署 Docker Registry

    在局域网内部署 Docker Registry 可以极大的提升平时 pull.push 镜像的速度,从而缩短自动化操作的过程.同时也可以缓解带宽不足的问题,真是一举多得.本文将从创建单机的 Docke ...

  2. ubuntu docker方式部署docker registry v2

    生成自己签名的证书 生成签名的过程需要根据提示输入一些参数,需要注意的时Common Name的时候需要输入一个自己需要的域名,如果时内部域名记得访问的时候需要修改hosts. mkdir /data ...

  3. 部署 Docker Registry 并配置认证登录

    文章目录 搭建 Docker Registry 创建本地映射目录 启动 Docker Registry 配置 Docker Registry 配置 Docker Registry 认证 启动带认证的 ...

  4. Docker——Registry 通过Shell管理私有仓库镜像

    使用方法: 复制代码保存为 image_registry.sh sh image_registry.sh  -h   #查看帮助 HUB=10.0.29.104:5000 改为自己的地址 #!/bin ...

  5. docker registry ui

    https://hub.docker.com/r/parabuzzle/docker-registry-ui/

  6. Docker registry自签名证书

    权威Registry 获取安全证书有两个办法:互联网认证的CA处获取.自建CA自己给自己签名. 1.从认证CA处获取签名证书,大多数是需要付出一定费用的,近些年也有认证CA提供免费证书,例如Let’s ...

  7. Docker系列08—搭建使用私有docker registry

    本文收录在容器技术学习系列文章总目录 1.了解Docker Registry 1.1 介绍 registry 用于保存docker 镜像,包括镜像的层次结构和元数据. 启动容器时,docker dae ...

  8. Docker入门教程(四)Docker Registry

    Docker入门教程(四)Docker Registry [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第四篇,介绍了Docker Registry,它 ...

  9. 【云计算】docker registry v2简介

    ubuntu docker方式部署docker registry v2 2016-03-03 17:36 by JackieHan, 4 阅读, 0 评论, 收藏,  编辑 生成自己签名的证书 生成签 ...

  10. Docker系列06—基于容器制作镜像并上传到Docker Registry

    本文收录在容器技术学习系列文章总目录 1.制作镜像 1.1 镜像的生成途径 基于容器制作 dockerfile,docker build 本篇主要详细讲解基于容器制作镜像:基于dockerfile 制 ...

随机推荐

  1. 基于AIOps实现智慧园区极简IT运维

    随着物联网.云平台.大数据.人工智能等技术的发展,并逐步投入到智慧园区的建设,传统园区数字化转型加快.园区的形式包括产业园区.教育园区.制造业园区.科研园区.社区等等,园区形态不断演进和发展,园区网承 ...

  2. KASAN 中kasan_multi_shot 的作用

    kasan_multi_shot 是 Linux 内核配置选项之一,与 Kernel Address Sanitizer (KASAN) 相关.KASAN 是一种内核内存错误检测工具,能够检测内核代码 ...

  3. ARM SMMU中 SteamTable的作用

    在 ARM SMMU(System Memory Management Unit)中,Stream Table 是一个非常关键的数据结构,它用于管理和映射设备的内存访问请求.它的作用主要体现在以下几个 ...

  4. JNI和HAL 的区别

    JNI (Java Native Interface) 和 HAL (Hardware Abstraction Layer) 在 Android 系统中都扮演着与本地代码交互的重要角色,但它们的功能和 ...

  5. android系统启动流程- ServiceManager进程启动流程

    *注:基于Android11源码 ServiceManager进程是在init进程创建的,所以我们从init进程的main()开始分析: // 文件路径: system/core/init/main. ...

  6. 泛型dotnet

    // 什么是泛型List<T> T:表示类型参数,指代任意类型 T可以是任意标识 // 编写代码时使用特殊符号替代位置类型,在实例化或使用/调用时才会进行具体类型的定义 // 特点:重用代 ...

  7. spring cloud openfeign源码分析

    大体流程鱼骨图 1.读取配置 启动类上添加注解@EnableFeignClients,工程启动后会自动读取注解上的配置 1 @Retention(RetentionPolicy.RUNTIME) 2 ...

  8. appium-命令行启动appium-server(windows)

    首先找到build\lib\main.js所在位置,我用的工具是everything(推荐一波),比windows自带的搜索强太多 执行命令:node C:\Users\Acer\AppData\Ro ...

  9. Visual Studio使用DotFuscator Community在Release时自动混淆并自动打包

    DotFuscator Community并不支持通过项目文件定义自动混淆文件,PRO当然可以. 为了简单使用DotFuscator Community自动混淆文件,并自动打包,通过四处打听,总结了一 ...

  10. KubeSphere 最佳实战:Kubernetes 部署集群模式 Nacos 实战指南

    Nacos 是 Dynamic Naming and Configuration Service 的首字母简称,一个更易于构建云原生应用的动态服务发现.配置管理和服务管理平台. Nacos 是构建以服 ...