如何搭建docker registry私服

2022年 10月 17日 发表评论
腾讯云正在大促:点击直达 阿里云超级红包:点击领取
免费/便宜/高性价比服务器汇总入口(已更新):点击这里了解

本文主要介绍如何构建docker注册表私有服务,非常详细,具有一定的参考价值。有兴趣的朋友一定要看!

到目前为止docker的官方注册表镜像分为两个版本,v2和v2之前的版本,我称之为v1,v1用python写的,后面的v2用GO语言,他们的API不一样。本文将分别基于SSL和登录认证建立上述两个版本的docker私有服务。

registry(v2)

设定环境:172.16.71.52(控制7,目录1.8)

先下载图片

创建证书

mkdir-pcertsopenslreq

-new key RSA :4096-nodes-sha 256-key outerts/domain . key

-x509-days 365-outer ts/domain . CRT copy domain . CRT到指定目录,其中172.16.71.52.xip.io是私有仓库所在的服务器的域名,5000是注册表的端口号。

CP/certs/domain . CRT/etc/docker/certs . d/172 . 16 . 71 . 52 . xip . io:5000/ca . CRT建立登录验证

mkdirauth

Docker run-entry point htpasswdregistry :2-bbn您的用户名和密码auth/htpasswd重新启动Docker

Systemctlrestartdockerrun起床

dockrrun-d-p 500033605000-restart=every-name registry

-v`pwd`/auth:/auth

-e'REGISTRY_AUTH=htpasswd'

-e ' REGISTRY _ AUTH _ HTPASSwd _ REALM=REGISTRY REALM '

-eRegistery _ AUTH _ HTpasswd _ PATH=/AUTH/HTpasswd

-v`pwd`/certs:/certs

-eRegistery _ HTTP _ TLS _ CErtificate=/certs/domain . CRT

-eRegistery _ HTTP _ TLS _ KEY=/certs/domain . KEY

Registry:2使用前登录

dockerlogin 172 . 16 . 71 . 52 . xip . IOP 36000 . 60000000006

dockertagredis 172 . 16 . 71 . 52 . xip . io:5000/redis

docker push 172 . 16 . 71 . 52 . xip . io :5000/redis检查镜像是否进入了我们搭建的私有仓库

#找到外部安装的目录

dockrinspect-format { { ' JSON。装载' } }注册表

#推进来的图像静静地躺在这里

CD/tmp/data/docker/registry/v2/repositories以下是注意事项:

1.创建认证证书时,常用名应该使用注册表所在机器的域名,我用IP测试失败。

2.确保5000端口在2.docker运行前没有被占用。成功启动后,使用docker日志查看是否有任何错误。

3.码头工人登录前3 .推拉

4.如果你想通过安全认证,记得把生成的domain.crt复制到/etc/docker/certs . d/172.16.71.52.xip.io :5000/ca . CRT,其中172 . 16 . 71 . 52 . xip . io是私有服务的域名,5000

5.v2的api已经改变。如果您访问v1/search,您将报告404未找到的错误。可以通过/v2/_catalog查看私有仓库的目录。参见此处了解V2的aip

https://docs.docker.com/registry/deploying/

https://docs.docker.com/engine/reference/commandline/inspect/

https://docs.docker.com/registry/spec/api/

registry(V1)

V1版本的注册表很难建立(也许我没有找到一个优雅的方法)。在网上找到一篇博文,用nginx进行SSL和登录认证。感谢博主,可以在这里查看(有pro test)

在Centos上用Nginx SSL设置docker-注册表

由于版本(docker1.8),有必要将生成的根证书复制到docker在ssl身份验证中指定的目录中(如构建V2时所述)

CP/etc/PKI/ca/cacert . PEM/etc/docker/certs . d/172 . 16 . 71 . 43 . xip . io 33605000/ca . CRT在其他主机访问私有服务时注意以上操作。

以上是“如何构建码头工人注册私人服务”一文的全部内容。谢谢大家看!希望分享的内容对大家有帮助,更多相关知识。欢迎关注本站!

小咸鱼

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: