Linux中怎么搭建Docker私有仓库
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,本篇内容主要讲解"Linux中怎么搭建Docker私有仓库",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Linux中怎么搭建Docker私有仓库"吧!1、
千家信息网最后更新 2025年02月02日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安全错误
数据库的锁怎样保障安全
软件开发计划 文档概述
怎么查询访问的服务器地址
为什么前端开始要求连接数据库
公安网络安全执法面试题
客户端无法连接到服务器
在数据库中查有关字段的表
局网络安全排查制度
大一数据库技术论文
2022年国外DNS服务器
湖北网络安全应急指挥中心
安徽智能软件开发成交价
NF8480M6浪潮服务器主板
讲网络安全的论文
数据库的表格怎么重命名
格爱网络技术有限公司
怎么查询网络安全密钥
保护网络安全国家战略
联想电脑管理杀毒防护服务器
迷你玩家是否炸了mc服务器
微信网络安全措施
哪个传真服务器最好
共享租车软件开发
江苏综合软件开发厂家报价
数据库备机
网络安全共担当游戏活动
联想服务器内存条插法
区块链游戏软件开发
广西c 软件开发
网络安全答题活动视频
外网访问服务器哪种方式安全