创建 docker 私有化仓库

本文介绍了如何在Linux环境中使用Docker搭建私有仓库,包括利用registry镜像快速创建私有仓库,配置本地和远程服务器以使用私有仓库,以及使用Harbor搭建更高级的私有仓库。通过私有仓库,可以实现镜像的本地管理和安全传输。
摘要由CSDN通过智能技术生成

  • 私有仓库介绍
  • 有时候使用 Docker Hub 这样的公共仓库可能丌方便(有时候无法访问),用户可以创建一个本地仓库供私人使用,这里使用官方提供的工具 docker-registry 来配置私有库 
  • 私有仓库好处:
    1、节约带宽
    2、可以自己定制系统
  • 搭建私有仓库的思路:
    老的思路:下载源码 tar/yum 安装 -》 安装-》修改配置文件-》启动服务
  • 使用 docker 思路:直接下载并使用 registry 镜像吭劢 docker 实例,这样仓库就搭建成功了。
  • 有了 docker 以后,所有软件丌再以 office.exe 或者 lrzsz.rpm 形式发布,而以 docker 镜像发布。只需要下载 docker 镜像并运行一个 docker 实例。有了 docker 以后,再也不用为安装 linux 服务而发愁!
  • 实验环境:
    docker 私有仓库地址:192.168.2.234
    docker 服务器地址 : 192.168.2.2  会使用 2.234 上 docker 私有仓库来pull/push 镜像
  • 首先配置 192.168.2.234 为 docker 私有仓库
  • yum install -y yum-utils device-mapper-persistent-data lvm2
  • yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  • yum install docker-ce docker-ce-cli containerd.io -y
  • systemctl enable docker --now
  • 停止防火墙,注意每次重启 docker 服务都会重新加载 iptables 

  • 拉取 registry 镜像。 registry 镜像中包括搭建本地私有仓库的软件
  • docker pull registry

  •  不指定版本会 pull 最新 latest
  • registry 镜像中已经把搭建私有库程序安装好了,只需要使用 registry 镜像运行一个 docker 实例就可以了。
  • 默认情况下,Registry 程序的存放镜像信息的目录是/var/lib/registry 目录下,这样如果容器被移除,则存放于容器中的镜像也会丢失,所以一般情况下会指定本地物理机一个目录如/opt/registry 挂载到容器的/var/lib/registry 下。
  • 使用-v 参数,指定本地持久的路径。registry 服务监听到端口号,默认是 5000
  • docker run -d -p 5000:5000 -v /opt/registry:/var/lib/registry registry:latest
  • 会自动创建 registry 目录

  • 查看私有仓库中的镜像列表:
    http://192.168.2.234:5000/v2/_catalog
  • 发现,现在还是空的,后面上传了本地 docker 镜像到私有仓库中,就有数据了。 


  • 在 192.168.2.2上搭建 docker 服务并使用私有仓库

  • yum install -y yum-utils device-mapper-persistent-data lvm2
  • yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  • yum install docker-ce docker-ce-cli containerd.io -y
  • systemctl enable docker --now

  • 修改 docker 配置文件,指定 docker 镜像加速结点为:私有仓库的地址
  • vim /etc/docker/daemon.json #创建这个 daemon.json 文件,写入以下内容:
    {
     "insecure-registries": [ "192.168.2.234:5000" ] 
    }
  •  注:添加红色标记文字。 insecure-registries 不安全的注册。这里的不安全指的是走 http 协议,要想安全传输镜像,需要使用 https 协议。私有仓库一般是局域中使用,所以直接使用 http 协议就可以了。

  • 上传本地镜像到私有仓库,下载一个实验用的 容器 busybox
  • docker pull busybox
  • 注:
    BusyBox 概述: BusyBox 是一个集成了一百多个最常用 Linux 命令和工具的软件。BusyBox 包含了 BusyBox 包含了一些简单的工具,例如 ls、cat 和 echo 等等,还包含了一些更大、更复杂的工具,例 grep、find、mount 以及 telnet。有些人将 BusyBox 称为 Linux 工具里的瑞士军刀。简单的说BusyBox 就好像是个大工具箱,它集成压缩了 Linux 的许多工具和命令,也包含了 Android 系统的自带的 shell。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值