某些场景下,为了保证私有仓库的安全,可能会期望将Docker Registry基于HTTPS协议开放。

  1) 通过docker search搜索registry镜像。

docker search registry

  2) 拉取registry最新镜像。

docker pull registry

  3) 查看镜像信息。

docker images

  4) 使用OpenSSL创建证书文件。

   确认OpenSSL是否已安装。

openssl version

   若为安装,先安装OpenSSL。

apt-get update
apt-get install -y openssl

   进入目录securitit/registry/certs/(根据自身需求创建即可),执行命令创建.crt.key证书文件。

openssl req -newkey rsa:4096 -nodes -sha256 -keyout /securitit/registry/certs/registry.key  -x509 -days 365 -out /securitit/registry/certs/registry.crt

  5) 使用registry镜像启动容器。

docker run -d -p 5000:5000 --privileged=true -v /securitit/registry/certs/:/securitit/registry/certs -e REGISTRY_HTTP_TLS_CERTIFICATE=/securitit/registry/certs/registry.crt -e REGISTRY_HTTP_TLS_KEY=/securitit/registry/certs/registry.key registry

  6) 查看容器信息。

docker ps -a

  7) 访问https://192.168.20.53:5000/v2/_catalog查看私有仓库内镜像信息。

  8) 通过htpasswd生成密码文件。

htpasswd -Bbn Securitit 123456 > /securitit/registry/auth/htpasswd

  9) 使用registry镜像启动容器,同时启用基于HTTP BASIC认证。

docker run -d \
--name registry \
-p 5000:5000 \
--restart=always \
--privileged=true \
-e "REGISTRY_AUTH=htpasswd" \
-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
-v /securitit/registry/auth/:/securitit/registry/auth \
-e "REGISTRY_AUTH_HTPASSWD_PATH=/securitit/registry/auth/htpasswd" \
-v /securitit/registry/certs/:/securitit/registry/certs \
-e REGISTRY_HTTP_TLS_CERTIFICATE=/securitit/registry/certs/registry.crt \
-e REGISTRY_HTTP_TLS_KEY=/securitit/registry/certs/registry.key \
registry

  10) 访问https://192.168.20.53:5000/v2/_catalog查看私有仓库内镜像信息。

  11) 输入设置的用户名和密码后,可正常访问。

  总结

  本文介绍了,如何配置Docker Registry基于HTTPS开放服务,同时配置基于HTTP BASIC认证方式。

  若文中存在错误和不足,欢迎指正!

Dockerfile Registry 配置HTTPS服务相关推荐

  1. 关于NodeJS配置HTTPS服务、阿里云申请HTTPS证书

    最新一直在折腾小程序 我是前后台一起做,前台不必说是微信的小程序,后端的用的是NODEJS. 所以就说一下NODEJS如何配置HTTPS服务 我的NODE用的是Express框架 直接上代码: 最重要 ...

  2. .Net Core和Jexus配置HTTPS服务

    花了几天时间,看了好多篇博客,终于搞定了网站的HTTPS服务,借此写篇博客,来让有需要的朋友少走弯路. 一.环境介绍 1.Linux下在Docker容器中部署好了一个网站,该网站需要通过外部提供程序访 ...

  3. 前端学习(2744):重读vue电商网站54之配置 HTTPS 服务

    为什么要启用 HTTPS 服务? 传统的 HTTP 协议传输的数据都是明文,不安全 采用 HTTPS 协议对传输的数据进行了加密处理,可以防止数据被中间人窃取,使用更安全 申请 SSL 证书(http ...

  4. 关于开发微信小程序后端linux使用xampp配置https

    关于开发微信小程序后端linux使用xampp配置https 背景 由于最近开发微信小程序,前后端交互需要使用https协议,故需要配置https服务 服务器环境 服务器系统 ubuntu 环境 xa ...

  5. wamp3.0.6配置https + Nginx转发 + 满足微信小程序的接口调用域名

    环境:winserver2012 R2 wamp环境 安卓无法发起请求https://www.jianshu.com/p/61695bfae5f7?utm_campaign 一.  wamp3.0.6 ...

  6. rhel5.5_Apache配置openssl支持https服务

    <rhel5.5_Apache配置openssl支持https服务> 1:切换到openssl证书目录: # cd /etc/pki/tls/certs 2:创建私钥: # make se ...

  7. 基于openssl的https服务的配置

    openssl实现私有CA,并配置基于openssl的https服务的配置,原理如下图 在CA服务器上实现私有CA步骤如下: 1.生成一对密钥 2.生成自签证书 基本的配置如下代码; [root@CA ...

  8. 《三、企业级SVN运维实战:SVN服务配置https访问》

    文章目录 一.svn服务部署 二.安装httpd及svn模块 三.svn http配置 四.创建svn http用户 五.修改svn仓库配置文件 六.配置https请求svn 七.svn测试 总结:整 ...

  9. WebGateway系列(4): 配置HTTPS访问IRIS的Web服务

    经常被问到有关IRIS如何支持SSL,HTTPS的问题,有必要写个东西介绍一下. HTTPS的原理 简单的说,https实现两个目的:一是访问网站加密,2是确认被访问的网站是真的. 首先,被访问的网站 ...

最新文章

  1. 毛永胜计算机教师,中国文化中心笛子教师与毛国立音乐学院师生交流
  2. 深入分析 Java I/O 的工作机制
  3. 5个IO口扫描25个按键的解决方法(转帖)
  4. JZOJ5906 传送门
  5. 【转载】飞鸽传书2013官方下载
  6. Ubuntu系统运行darknet出OSError: /libdarknet.so: cannot open shared object file: No such file or directory
  7. Linux命令-文件处理命令:touch
  8. 图纸怎么发给别人_微信语音怎么转发?微信语音转发给别人最新办法10秒解决...
  9. SuperMap许可驱动安装流程详解
  10. 【Unit 1】Python以及Pycharm的安装与设置
  11. 网站搜索优化SEO概念与方法
  12. python、matplotlib画股票分时图、时间序列图的时候如何跳过没有数据的区域
  13. 基数排序组合桶式排序
  14. 日常小记-pdf扫描版和非扫描版区别
  15. 条形码录入测试软件,条码管理:商品条码录入
  16. 丙腈PEG丙腈, CN-PEG-C
  17. Gdal关于CAD转SHP格式
  18. 在苹果MAC OS X Lion系统上使用Outlook for MAC 2011配置Exchange邮箱
  19. 使用Spring获取JavaBean的属性值匹配短信模板
  20. Python日期时间差的计算(天/小时/分钟)及timedelta函数的使用(附python代码)

热门文章

  1. 金山词霸 IE9取词兼容性补丁包下载(来自官方)
  2. dentry 和inode
  3. 北京小学几年级开始学计算机,小学入学年龄到底几岁合适?北京市教委最新回应是这样的...
  4. Python表白比心
  5. oled模块的驱动芯片和pcb图
  6. OpenCV图像特征匹配
  7. Evince pdf反色閱讀
  8. Centos7 系列:磁盘挂载和磁盘扩容(新加硬盘方式)
  9. 【云计算】从Serverless说起,谈谈边缘计算的未来;从物理机到Kubernetes的那些坑与心得
  10. oracle用户密码已过期,oracle提示登录密码过期完美解决方法