docker仓库数据传输加密的问题小结
作者:BLEACH-heiqiyihu
这篇文章主要介绍了docker仓库数据传输加密的问题小结,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
1.进行加密数据运算对配置文件底下的内容进行删除
[root@localhost ~]# vim /etc/docker/daemon.json
重新启动docker程序
[root@localhost ~]# systemctl restart docker
2.建立加密目录,生成认证key和证书
[root@localhost ~]# mkdir certs [root@localhost ~]# openssl req -newkey rsa:4096 -nodes -sha256 \ > -keyout certs/timinglee.org.key \ > -addext "subjectAltName = DNS:reg.timinglee.org" \ #指定备用名称 > -x509 -days 365 -out certs/timinglee.org.crt
目录底下成功生成证书和Key
注意:域名解析创建存在对应的地址reg.timinglee.org
[root@localhost ~]# vim /etc/hosts 172.25.254.200 docker-node1.timinglee.org reg.timinglee.org
3.启动registry仓库
[root@localhost ~]# docker run -d -p 443:443 --restart=always \ #使用加密端口443 > -v /root/certs:/certs \ # -v将本机的目录(/root/certs)挂载到镜像目录(/certs)中 > -e REGISTRY_HTTP_ADDR=0.0.0.0:443 \ #指定http监控的端口 > -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/timinglee.org.crt \ #指定容器底下证书 > -e REGISTRY_HTTP_TLS_KEY=/certs/timinglee.org.key registry:latest #指定运行的镜像
检测仓库是否启动成功
4.尝试进行镜像推送 会失败
[root@localhost ~]# docker tag nginx:v3 reg.timinglee.org/nginx:v3 [root@localhost ~]# docker push reg.timinglee.org/nginx:v3 The push refers to repository [reg.timinglee.org/nignx] Get "https://reg.timinglee.org/v2/": dial tcp: lookup reg.timinglee.org on 114.114.114.114:53: no such host
原因是docker客户端没有key和证书
5.为客户端建立证书
[root@localhost ~]# mkdir -p /etc/docker/certs.d/reg.timinglee.org -p [root@localhost ~]# cp /root/certs/timinglee.org.crt /etc/docker/certs.d/reg.timinglee.org/ca.crt
查看底下是否存在证书
[root@localhost ~]# systemctl restart docker
6.测试,再次推送nginx:v3
[root@localhost ~]# docker push reg.timinglee.org/nginx:v3
到此这篇关于docker仓库数据传输加密的文章就介绍到这了,更多相关docker数据传输加密内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!