本文由雨云提供云计算服务,注册链接雨云 - 新一代的云服务提供商,以下推荐均代表个人观点,为了更好的阅读体验,可前往打造属于你自己的docker仓库|rensumo的技术笔记查看

为什么要搭建私有的仓库?

因为在国内,如果直连https://hub.docker.com/百分百连不上,即使通过魔法访问访问https://hub.docker.com/ 也可能出现无法访问页面

当然现在也有一些国内的镜像管理网站,比如网易云镜像服务、DaoCloud镜像服务、阿里云镜像服务等。但是有些收费的。戛然而止了。所以我们可以搭建属于自己的镜像仓库

搭建私有镜像仓库

docker-registry部署

首先前往服务器管理后台(以雨云为例)-复制公网ip和密码

打开FinalShell,点击左上角的文件夹图标-第一个-ssh连接

输入刚才复制的ip,用户名和密码-确定

双击刚才创建的连接

输入以下代码

docker run -p 5000:5000 --name registry2 \
--restart=always \
-e REGISTRY_STORAGE_DELETE_ENABLED="true" \
-d registry:2

等待创建完成

配置docker 信任的地址

私服采用的是http协议,默认不被Docker信任,所以需要做一个配置:

方法一:在线修改(不做演示)

# 打开要修改的文件
vi /etc/docker/daemon.json
# 添加内容:
# 需要将 http://192.168.175.128 替换为你自己的 ip
"insecure-registries":["http://192.168.175.128:5000"]
# 重加载
systemctl daemon-reload
# 重启docker
systemctl restart docker

方法二:本地修改

先cd到/etc/docker/目录cd /etc/docker/,下方文件栏也会自动跳转

在文件栏找到daemon.json-右键-下载

在本地打开该文件,添加以下内容(需在花括号中添加,不要删除或者添加到外面)-保存

将文件拖入进去(如果默认非root用户则需要使用rm删除,将json上传至网盘等处用wget下载才行,部分时候还需要mv修改后缀名)

接着输入以下代码,等待重启完成即可

# 重加载
systemctl daemon-reload
# 重启docker
systemctl restart docker

接下来我们尝试上传镜像

我先查看自己本地的镜像都有什么,输入docker images查看

我这里就以rensumo/locyanfrp:amd64-0.51.3为例,输入以下代码(具体格式为docker tag 你要推送的镜像名称或id,名称后需要加上标签(不写则为latest),也就是常说的几点几,当然也可以是别的 docker-registry地址+端口/重命名,建议和原本的镜像名相同)-回车

docker tag rensumo/locyanfrp:amd64-0.51.3 154.37.214.107:5000/rensumo/locyanfrp:amd64-0.51.3

当发现没有输出就代表成功了-可输入docker images查看是否成功

接下来进行推送,输入以下代码(docker push docker-registry地址+端口/rensumo/locyanfrp:amd64-0.51.3

docker push 154.37.214.107:5000/rensumo/locyanfrp:amd64-0.51.3

如果输出了类似这样的日志,代表你没配置成功信任地址

成功应如图:

docker-registry-browser部署

一般到这里就结束了,但是,没有web界面显得比较简陋,接来下,一起部署docker-registry-browser吧

在终端输入以下代码

docker run -p 5001:8080 --name registry-browser \
-e SECRET_KEY_BASE=123456 \
-e DOCKER_REGISTRY_URL=http://154.37.214.107:5000/v2 \  #需改为服务器的ip
-e ENABLE_DELETE_IMAGES=true \
-d klausmeyer/docker-registry-browser

等待创建完成

在浏览器输入ip:5001就可以看到刚才上传的镜像了

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐