好物优选点击查看详情 京东购买

暂无内容

群晖NAS搭建Docker私服

公服:dockerhub等(优点:什么都有。缺点:慢,不私有。)
私服:解决公服的缺点。

本文以群晖NAS搭建为例(熟悉Docker的,看了本文,不是群晖也一样操作)
准备说明
1、私服镜像地址(https://hub.docker.com/_/registry)
2、私服映射端口(宿主机4000映射registry容器的5000)
3、私服镜像文件保存位置映射(宿主机目录docker/docker-registry/registry映射容器/var/lib/registry)
因为容器内部默认将镜像保存到/var/lib/registry目录,映射出来,防止删除容器后数据丢失!

步骤
1、群晖NAS》Docker》注册表》搜索registry(应该是第一个,右边有官方认证镜像图标)》下载镜像
2、映像》选中下载完成的registry》启动按钮》高级设置
3、名称(docker-registry)叫什么你随意,端口和卷,按上面的说明填
4、应用》一直下一步》应用(结束)

说明
1、假设你推送一个镜像 xzxiaoshan/demo 到这个私服,那么你这个镜像的访问地址就是 http://registry.domain.com:4000/v2/_catalog 就不会是404了。
2、推送镜像到私服的命令为

docker push registry.domain.com:4000/xzxiaoshan/demo:latest 

直接这样,会出现错误:

root@HOME-NAS:~# docker push registry.domain.com:4000/xzxiaoshan/frps:v0.27.0 The push refers to a repository [registry.domain.com:4000/xzxiaoshan/frps] An image does not exist locally with the tag: registry.domain.com:4000/xzxiaoshan/frps root@HOME-NAS:~# 

由于docker默认镜像仓库是dockerhub,所以xzxiaoshan/frps:v0.27.0相当于docker.io/xzxiaoshan/frps:v0.27.0,因此,想要将镜像推送到私服仓库中,需要修改镜像标签。

docker tag xzxiaoshan/frps:v0.27.0 registry.domain.com:4000/xzxiaoshan/frps:v0.27.0 

然后再重新执行docker push命令即可,下面是我做测试的一个示例:

root@HOME-NAS:~# docker tag xzxiaoshan/frps:v0.27.0 registry.domain.com:4000/xzxiaoshan/frps:v0.27.0 root@HOME-NAS:~# docker push registry.domain.com:4000/xzxiaoshan/frps:v0.27.0 The push refers to a repository [registry.domain.com:4000/xzxiaoshan/frps] 1cfcb4906068: Pushed 767f936afb51: Pushed release-0.24.1: digest: sha256:99eececd9cf374c8082f951b7989cdc5fd618d943384fd8973f4b68c54cf54b4 size: 739 root@HOME-NAS:~# 

3、从私服下载镜像的命令为

docker pull registry.domain.com:4000/xzxiaoshan/frps:v0.27.0 

4、常用的几个API地址

# 查看私服镜像所有仓库 http://localhost:5000/v2/_catalog # 查看仓库中镜像的所有标签列表,以xzxiaoshan/frps为例 http://localhost:5000/v2/xzxiaoshan/frps/tags/list # 更多API详见官网地址 https://docs.docker.com/registry/spec/api/ 

你可以再加一个nginx整一个和dockerhub类似的先登录才能用的玩意。
作为私服,一般内部使用,感觉意义不大。

(END)

原文链接:https://blog.csdn.net/catoop/article/details/89739266

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享