Linux中怎么搭建Docker私有仓库
发表于:2024-11-30 作者:千家信息网编辑
千家信息网最后更新 2024年11月30日,本篇内容主要讲解"Linux中怎么搭建Docker私有仓库",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Linux中怎么搭建Docker私有仓库"吧!1、
千家信息网最后更新 2024年11月30日Linux中怎么搭建Docker私有仓库
本篇内容主要讲解"Linux中怎么搭建Docker私有仓库",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Linux中怎么搭建Docker私有仓库"吧!
1、下载registry镜像
[root@localhost ~]# docker pull registryUsing default tag: latestlatest: Pulling from library/registry486039affc0a: Pull completeba51a3b098e6: Pull complete8bb4c43d6c8e: Pull complete6f5f453e5f2d: Pull complete42bc10b72f42: Pull completeDigest: sha256:7d081088e4bfd632a88e3f3bcd9e007ef44a796fddfe3261407a3f9f04abe1e7Status: Downloaded newer image for registry:latestdocker.io/library/registry:latest
2、生成registry容器,开放5000端口
[root@localhost ~]# docker create -it registry /bin/bashfd51aa59dc5cea7b589d0403e562cb8f0098c3a8a7da239572dd5bfd9423ec96[root@localhost ~]# docker ps -aCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESfd51aa59dc5c registry "/entrypoint.sh /bin…" 10 seconds ago Created optimistic_saha#建议直接执行下面的这个命令,因为笔者遇到start这个容器发现退出的状态码非0(后面解决了,使用/bin/sh环境即可)[root@localhost ~]# docker run -d -p 5000:5000 -v /data/registry:/tmp/registry registryceb498d622ab743fc858a993e3870f9831e20436cb71f7225215f1f0899571f1[root@localhost ~]# docker ps -aCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESceb498d622ab registry "/entrypoint.sh /etc…" 2 seconds ago Up 2 seconds 0.0.0.0:5000->5000/tcp strange_swansondocker run -d -p 5000:5000 -v /data/registry:/tmp/registry registry命令的解释:-d ——守护进程-v ——数据卷设置{/data/registry表示的宿主机系统中的一个绝对路径,没有的时候会自动创建,/tmp/registry表示容器内部的目录}#宿主机目录[root@localhost ~]# ls /bin boot data dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var[root@localhost ~]# ls /data/registry#容器内部目录[root@localhost ~]# docker exec -it ceb498d622ab /bin/sh/ # ls /bin etc media root srv usrdev home mnt run sys varentrypoint.sh lib proc sbin tmp/ # ls tmp/registry
3、客户端设置daemon.json文件 (指定私有仓库位置)
[root@localhost ~]# vim /etc/docker/daemon.json{"insecure-registries": ["20.0.0.149:5000"], #将本地服务器作为私有仓库位置"registry-mirrors": ["https://5m9y9qbl.mirror.aliyuncs.com"]}[root@localhost ~]# systemctl restart docker
4、创建本地的镜像标签
[root@localhost ~]# docker pull httpdUsing default tag: latestlatest: Pulling from library/httpd123275d6e508: Pull completee984dd982a6e: Pull complete963280e5cf81: Pull complete6faf90d050b2: Pull complete962b56984bb0: Pull completeDigest: sha256:d5dc0d279039da76a8b490d89a5c96da83a33842493d4336b42ccdfbd36d7409Status: Downloaded newer image for httpd:latestdocker.io/library/httpd:latest[root@localhost ~]# docker tag httpd:latest 20.0.0.149:5000/httpd
5、上传镜像
[root@localhost ~]# docker push 149:5000/httpdThe push refers to repository [149:5000/httpd]An image does not exist locally with the tag: 149:5000/httpd[root@localhost ~]# docker push 20.0.0.149:5000/httpdThe push refers to repository [20.0.0.149:5000/httpd]9dabb51b1ca2: Pushed4621e8a6d1da: Pushede728c649bc91: Pushed1a935e59aa8a: Pushedb60e5c3bcef2: Pushedlatest: digest: sha256:8f10edef61246c6c142a87304d4ffa68298662ecb619776e4e9817d06ec5f567 size: 1367[root@localhost ~]# curl -XGET http://20.0.0.149:5000/v2/_catalog{"repositories":["httpd"]}#有上面的结果表示上传成功
6、下载镜像测试
[root@localhost ~]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEhttpd latest bdc169d27d36 Less than a second ago 166MB20.0.0.149:5000/httpd latest bdc169d27d36 Less than a second ago 166MBregistry latest 708bc6af7e5e 2 months ago 25.8MB[root@localhost ~]# docker rmi bdc169d27d36Error response from daemon: conflict: unable to delete bdc169d27d36 (must be forced) - image is referenced in multiple repositories[root@localhost ~]# docker rmi bdc169d27d36 -fUntagged: 20.0.0.149:5000/httpd:latestUntagged: 20.0.0.149:5000/httpd@sha256:8f10edef61246c6c142a87304d4ffa68298662ecb619776e4e9817d06ec5f567Untagged: httpd:latestUntagged: httpd@sha256:d5dc0d279039da76a8b490d89a5c96da83a33842493d4336b42ccdfbd36d7409Deleted: sha256:bdc169d27d36e2438ec8452c7dd7a52a05561b5de7bef8391849b0513a6f774bDeleted: sha256:6535aa332fb72ca508f550fef8ffb832d4c6bc72a48720b42659e10d47668181Deleted: sha256:c7bce1fab718a11501a672c895a729b1fdf8099d00fe152bef8c2534ee455976Deleted: sha256:75b6b2392924b062257ed97e5c2f3aa9f50a922b94c3f7c342d0aed2370e8becDeleted: sha256:267e2020b1bd0b182eb02d1a0f3e2f72efc542890ef6159ed9c3570322608de0Deleted: sha256:b60e5c3bcef2f42ec42648b3acf7baf6de1fa780ca16d9180f3b4a3f266fe7bc[root@localhost ~]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEregistry latest 708bc6af7e5e 2 months ago 25.8MB[root@localhost ~]#
测试:
[root@localhost ~]# docker pull 20.0.0.149:5000/httpdUsing default tag: latestlatest: Pulling from httpd123275d6e508: Pull completee984dd982a6e: Pull complete963280e5cf81: Pull complete6faf90d050b2: Pull complete962b56984bb0: Pull completeDigest: sha256:8f10edef61246c6c142a87304d4ffa68298662ecb619776e4e9817d06ec5f567Status: Downloaded newer image for 20.0.0.149:5000/httpd:latest20.0.0.149:5000/httpd:latest[root@localhost ~]#
拉取成功并且拉取镜像的速度很快。
最后给出上面出现的状态码错误的问题具体解决:
到此,相信大家对"Linux中怎么搭建Docker私有仓库"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
仓库
私有
镜像
容器
目录
成功
位置
内容
命令
宿主
宿主机
状态
面的
学习
测试
实用
更深
兴趣
实用性
实际
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
国泰安数据库可以查什么数据
网络技术学习好物分享
凝望树网络技术有限公司
如何把数据传到数据库
域名指向本地服务器
1040错误数据库
i到位的软件开发公司
网吧服务器装哪个系统好
软件开发如何举证不胜任
软件开发转实施好用吗
材料模拟软件开发
江西网络安全检测资质
上海游宗网络技术有限公司
数据库关系图设计器免费完整版
四川1u机架服务器哪家好
天龙八部服务器测速中登录不了
提前局党组审议网络安全制度
西安邮电大学考研网络安全
关于软件开发的题目
网络技术培训证书
北京的服务器都放在哪里
数据库相似度查询
对网络安全利弊的看法
采用互穿聚合物网络技术
如何加强学习网络安全知识
软件开发都需要什么编程语言
如何创建db2数据库实例
哪个软件开发平台最好
gis软件开发方法的原理
网络安全黑板报艺术字