Ubuntu Docker Registry 搭建私有仓库

简介:

服务器版本 Ubuntu 16.04 LTS。

安装命令:

$ docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry

Registry 服务默认会将镜像保存在/var/lib/registry目录下,上面命令设置保存目录在/opt/registry下,我们可以看下 Registry 容器状态:

$ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
e2b1ffd9072e        registry            "/entrypoint.sh /e..."   2 hours ago         Up About an hour    0.0.0.0:5000->5000/tcp   stoic_davinci

接着,我们登录另外一台服务器,将本地的已有的镜像文件推送到私有仓库中,首先,我们需要将镜像的tag标记为要推送到私有仓库,示例:

$ docker tag hwapp:v2 40.125.207.78:5000/hwapp:v3

然后,我们看下镜像文件列表:

$ docker images
docker images
REPOSITORY                 TAG                 IMAGE ID            CREATED             SIZE
40.125.207.78:5000/hwapp   v3                  fe28b19b4410        24 hours ago        1.63GB
hwapp                      v2                  fe28b19b4410        24 hours ago        1.63GB
hwapp                      v1                  8a28e2e870d4        25 hours ago        1.63GB
microsoft/aspnetcore       latest              0f2330f1a843        26 hours ago        280MB
microsoft/dotnet           latest              a7dd4972fc95        6 days ago          1.63GB

最后,我们就可以将40.125.207.78:5000/hwapp:v3镜像文件,推送到私有仓库了:

$ docker push 40.125.207.78:5000/hwapp:v3

可能会出现下面的错误:

$ docker push 40.125.207.78:5000/hwapp:v3
The push refers to a repository [40.125.207.78:5000/hwapp]
Get https://40.125.207.78:5000/v1/_ping: http: server gave HTTP response to HTTPS client

解决方式,在本服务器操作,而不是私有仓库所在服务器(如果已有daemon.json文件,进行修改即可):

$ touch /etc/docker/daemon.json
$ echo '{ "insecure-registries":    ["40.125.207.78:5000"] }' > /etc/docker/daemon.json
$ service docker restart

然后,再执行下推送命令就可以了,我们也可以直接构建成要推送私有仓库的镜像,示例:

$ docker build -t 40.125.207.78:5000/hwapp:v4 .

然后,再执行下推送命令:

$ docker push 40.125.207.78:5000/hwapp:v4

推送成功之后,我们可以检查下私有仓库里的镜像文件:

$ curl http://40.125.207.78:5000/v2/_catalog
{"repositories":["hwapp"]}
$ curl http://40.125.207.78:5000/v2/hwapp/tags/list
{"name":"hwapp","tags":["v3","v4"]}

然后,我们就可以拉取私有仓库里的镜像文件了:

$ docker pull 40.125.207.78:5000/hwapp:v4

本文转自田园里的蟋蟀博客园博客,原文链接:http://www.cnblogs.com/xishuai/p/ubuntu-docker-registry.html,如需转载请自行联系原作者

相关文章
|
开发工具 Docker 容器
Docker容器内Permission denied解决方法
Docker容器内Permission denied解决方法
9350 0
|
存储
什么是公有云、私有云、混合云?
什么是公有云、私有云、混合云?公有云+私有云的混合云管理,是中大型企业的必经之路。如果您还未找到适合您的混合云管理平台,不妨可以一试行云管家混合云管理平台,操作简单便捷,只需三步,开箱即用,更可以直接联系客服进行测试。
9564 1
|
机器学习/深度学习 人工智能 数据可视化
基于YOLOv8的输电通道隐患检测系统:精准识别气球、风筝、鸟巢与垃圾【含完整训练源码+部署教程】
本项目构建了一个完整的 YOLOv8输电通道隐患检测系统,实现对气球、风筝、鸟巢、垃圾等典型空中异物的精准识别,适用于输电线路的无人机巡检、安监辅助等实际场景。
基于YOLOv8的输电通道隐患检测系统:精准识别气球、风筝、鸟巢与垃圾【含完整训练源码+部署教程】
|
Cloud Native Devops 虚拟化
Docker和VMWare有什么不同
【10月更文挑战第18天】Docker和VMWare有什么不同
|
10月前
|
计算机视觉
YOLOv11改进策略【卷积层】| RCS-OSA 通道混洗的重参数化卷积 二次创新C3k2
YOLOv11改进策略【卷积层】| RCS-OSA 通道混洗的重参数化卷积 二次创新C3k2
440 0
YOLOv11改进策略【卷积层】| RCS-OSA 通道混洗的重参数化卷积 二次创新C3k2
|
10月前
|
Shell 测试技术 UED
云产品评测|操作系统智能助手OS Copilot新功能
作为一名企业开发人员,我最近测试了 OS Copilot 的 -t、-f 功能及管道功能。-t 功能能正确识别并解释端口号,但界面操作需优化;-f 功能成功完成自定义任务,但在交互连续性上有待改进;管道功能表现最佳,支持简便的自定义任务操作。建议在 -t 功能中增加交互入口,并优化 -f 功能的后续操作体验。
|
存储 关系型数据库 MySQL
docker中数据卷的创建与挂载
【10月更文挑战第12天】
292 3
|
Ubuntu 应用服务中间件 nginx
apt-mirror搭建Ubuntu镜像站
因为公司要经常用到Ubuntu,又没有镜像站,使用外面的镜像站虽说很方便,但是速度有点慢,只能自己折腾一个镜像站了。 apt-mirror在网上教程很多,但是很乱,一些地方就直接省略。 似乎tunasync比较方便,在部署完apt-mirror之后才看到有这个,公司不给服务器我折腾了,没办法
2310 0
apt-mirror搭建Ubuntu镜像站
|
资源调度
通过yarn快速安装 electron
通过yarn快速安装 electron
1048 0
|
监控 Java 数据库连接
kettle开发-远程执行作业
kettle开发-远程执行作业
619 0

热门文章

最新文章