docker registry 配置证书和使用用户名密码登录

docker registry 配置证书和使用用户名密码登录

  1. 下载registry镜像
docker pull registry
  1. 生成自签名证书,假设当前的域名是:test.registry.com

创建目录

mkdir registry && cd registry && mkdir certs && cd certs

生成证书和私钥

cd .. && mkdir auth
docker run --entrypoint htpasswd registry -Bbn testuser password > auth/htpasswd

用户名:test 密码:pass

  1. 启动registry
docker run -d -p 5000:5000 --restart=always --name registry -v `pwd`/auth:/root/registry/auth -e "REGISTRY_AUTH=htpasswd" -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" -e REGISTRY_AUTH_HTPASSWD_PATH=/root/registry/auth/htpasswd -v `pwd`/certs:/root/registry/certs -e REGISTRY_HTTP_TLS_CERTIFICATE=/root/registry/certs/registry.crt -e REGISTRY_HTTP_TLS_KEY=/root/registry/certs/registry.key -v /data:/var/lib/registry registry
  1. 验证

在另外一台机器或者是本机上,执行

mkdir -p /etc/docker/certs.d/test.registry.com:5000

如果此域名没有在DNS上配置,可以通过设置hosts来临时测试使用

echo "x.x.x.x test.registry.com" >> /etc/hosts

登录

docker login

就可以验证docker pull,docker push

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容