【Docker】使用 Docker Registry 搭建自己的 Docker 镜像仓库

这篇具有很好参考价值的文章主要介绍了【Docker】使用 Docker Registry 搭建自己的 Docker 镜像仓库。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

使用 Docker Registry 搭建自己的 Docker 镜像仓库

在使用 Docker 进行应用程序的开发和部署时,使用 Docker 镜像仓库是一个很好的实践。它允许集中存储和管理 Docker 镜像,方便团队协作和版本控制。在本文中,将介绍如何使用 Docker Registry 搭建自己的 Docker 镜像仓库,并提供配置文件和配置说明。

什么是 Docker Registry?

Docker Registry 是官方提供的开源镜像仓库软件,它允许存储和分发 Docker 镜像。可以将 Docker Registry 作为私有仓库使用,以便在内部部署和管理镜像。

步骤一:安装 Docker Registry

要安装 Docker Registry,请按照以下步骤进行操作:

  1. 安装 Docker:安装 Docker 引擎。可以按照 Docker 官方文档中的说明进行安装。

  2. 配置 Docker Registry:创建一个用于存储镜像的目录,例如 /var/lib/docker/registry。确保具有足够的权限来访问该目录。

  3. 创建配置文件:在 /etc/docker/registry/config.yml 路径下创建一个配置文件。可以使用以下示例作为起点:

    version: 0.1
    log:
      level: info
      formatter: text
    storage:
      filesystem:
        rootdirectory: /var/lib/docker/registry
    

    这是一个基本的配置文件示例,指定了存储目录为 /var/lib/docker/registry

  4. 启动 Docker Registry 容器:使用以下命令启动 Docker Registry 容器,并将配置文件挂载到容器中:

    docker run -d -p 5000:5000 --restart=always --name registry \
    -v /etc/docker/registry/config.yml:/etc/docker/registry/config.yml \
    -v /var/lib/docker/registry:/var/lib/registry registry:2
    

    这将从 Docker Hub 上拉取最新的 Docker Registry 镜像,并将容器映射到本地的 5000 端口,并将配置文件和存储目录挂载到容器中。

  5. 验证安装:使用浏览器访问 http://<your-server-ip>:5000/v2/_catalog,如果能够看到一个空的镜像目录,则说明 Docker Registry 安装成功。

步骤二:上传和下载镜像

一旦 Docker Registry 安装完成,可以开始上传和下载 Docker 镜像。

对于上传镜像,需要先将的镜像打标签为 Registry 的地址。假设的服务器 IP 地址为 your-server-ip,可以使用以下命令来打标签:

docker tag <your-image>:<tag> <your-server-ip>:5000/<your-image>:<tag>

然后,使用以下命令将镜像推送到 Docker Registry:

docker push <your-server-ip>:5000/<your-image>:<tag>

对于下载镜像,可以使用以下命令从 Docker Registry 获取镜像:

docker pull <your-server-ip>:5000/<your-image>:<tag>

步骤三:配置 Docker 客户端

默认情况下,Docker 客户端不会信任非 HTTPS 的镜像仓库。为了能够使用 Docker Registry,需要在 Docker 客户端上进行一些配置。

  1. 编辑 Docker 配置文件:打开 /etc/docker/daemon.json 文件(如果不存在,请创建该文件)。

  2. 添加信任配置:在文件中添加以下内容:

    {
      "insecure-registries": ["<your-server-ip>:5000"]
    }
    

    替换 <your-server-ip> 为的 Docker Registry 服务器的 IP 地址。

  3. 重启 Docker 服务:使用以下命令重启 Docker 服务,以使配置生效:

    sudo systemctl restart docker
    

现在,应该可以使用配置好的 Docker 客户端与 Docker Registry 进行交互。

配置文件说明

以下是 Docker Registry 配置文件的一些常见配置选项的说明:

  • version:配置文件的版本号。
  • log:用于配置日志相关的选项,如日志级别和格式化方式。
  • storage:用于配置镜像存储的选项。
    • filesystem:指定使用文件系统作为存储后端。
      • rootdirectory:指定存储镜像的根目录。
  • http:用于配置 HTTP 服务的选项。
    • addr:指定 HTTP 服务的地址和端口,默认为 :5000
    • headers:用于配置自定义的 HTTP 头部。
  • https:用于配置 HTTPS 服务的选项。如果希望启用 HTTPS 支持,可以配置以下选项:
    • addr:指定 HTTPS 服务的地址和端口,默认为 :443
    • tls:用于配置 TLS 协议的选项。
      • certificate:指定 TLS 证书的路径。
      • key:指定 TLS 密钥的路径。
  • auth:用于配置身份验证的选项。如果希望对 Docker Registry 进行身份验证,可以配置以下选项:
    • htpasswd:指定 Htpasswd 文件的路径。Htpasswd 文件包含用户名和密码的哈希值。
  • notifications:用于配置事件通知的选项。
    • endpoints:指定事件通知的目标地址。
  • health:用于配置健康检查的选项。可以配置健康检查的路径和端口。
  • redis:用于配置和 Redis 数据库的集成。可以指定 Redis 的地址和端口。

在配置文件中,可以根据实际需求进行自定义配置,例如更改存储目录、添加身份验证等。

示例

以要配置删除 Docker Registry 中镜像的权限需要在配置文件中设置 delete 权限。配置文件中的相应配置项是 auth

auth 配置项中,可以配置不同类型的身份验证,例如基于 Htpasswd 文件的身份验证。可以为不同的用户或用户组分配不同的权限,包括删除镜像的权限。

以下是一个示例 auth 配置项的部分内容,演示如何配置删除权限:

auth:
  htpasswd:
    # ...其他配置...
    realm: Registry Realm
    path: /path/to/htpasswd
    access:
      - name: delete
        actions: ["delete"]

在上述示例中,access 配置项定义了一个名为 delete 的权限,该权限具有 delete 操作。可以根据实际需求进行更改和扩展。

结论

通过使用 Docker Registry,可以搭建自己的 Docker 镜像仓库,方便存储和管理 Docker 镜像。使用 Docker Registry,可以轻松地上传和下载镜像,并与团队成员共享和协作。

在本文中,介绍了使用 Docker Registry 搭建 Docker 镜像仓库的步骤,包括安装 Docker Registry、上传和下载镜像、配置 Docker 客户端以及配置文件说明。希望本文对搭建 Docker 镜像仓库有所帮助。文章来源地址https://www.toymoban.com/news/detail-641577.html

到了这里,关于【Docker】使用 Docker Registry 搭建自己的 Docker 镜像仓库的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux:搭建docker私有仓库(registry)

    当我们内部需要存储镜像时候,官方提供了registry搭建好直接用,废话少说直接操作 在 Linux 上安装 Docker Desktop |Docker 文档 https://docs.docker.com/desktop/install/linux-install/ 安装 Docker 引擎 |Docker 文档 https://docs.docker.com/engine/install/ 官方文档写的非常详细,涵盖了各大平台  curl -XGET

    2024年02月20日
    浏览(30)
  • 如何在Linux部署Docker Registry并实现固定地址远程访问本地镜像仓库

    Docker Registry 本地镜像仓库,简单几步结合cpolar内网穿透工具实现远程pull or push (拉取和推送)镜像,不受本地局域网限制! 使用官网安装方式,docker命令一键启动,该命令启动一个registry的容器,版本是2,挂载宿主机端口是5000端口,挂载后,5000端口就是我们连接镜像仓库的本地端口 执行

    2024年02月03日
    浏览(41)
  • 如何在Linux部署Docker Registry本地镜像仓库并实现无公网IP远程连接

    Docker Registry 本地镜像仓库,简单几步结合cpolar内网穿透工具实现远程pull or push (拉取和推送)镜像,不受本地局域网限制! 使用官网安装方式,docker命令一键启动,该命令启动一个registry的容器,版本是2,挂载宿主机端口是5000端口,挂载后,5000端口就是我们连接镜像仓库的本地端口 执行

    2024年03月19日
    浏览(37)
  • 【Docker篇】从0到1搭建自己的镜像仓库并且推送镜像到自己的仓库中

    Docker私有仓库的存在为用户提供了更高的灵活性、控制和安全性。与使用公共镜像仓库相比,私有仓库使用户能够完全掌握自己的镜像生命周期。 首先,私有仓库允许用户在本地或云服务器上部署和管理自己的镜像存储库。这意味着用户可以根据自己的需求和规模进行扩展和

    2024年01月19日
    浏览(37)
  • Docker Registry(镜像仓库)

    镜像仓库负责存储,管理和分发镜像,并且提供登入认证能力,建立仓库的索引。 镜像仓库管理多个repositoy,repositoy通过命名来区分。每个repository包含一个或多个镜像,镜像通过镜像名称和标签(tag)来区分。 镜像仓库(regisry):要从哪一个镜像仓库拉取镜像,通常通过

    2024年01月24日
    浏览(31)
  • 云原生之容器编排实践-在K8S集群中使用Registry2搭建私有镜像仓库

    基于前面搭建的3节点 Kubernetes 集群,今天我们使用 Registry2 搭建私有镜像仓库,这在镜像安全性以及离线环境下运维等方面具有重要意义。 Note: 由于是测试环境,以下创建了一个 local-storage 的 StorageClass ,并使用本地磁盘的方式创建使用 PV ,实际建议使用 NFS 。 共用到了三台

    2024年02月19日
    浏览(33)
  • docker镜像仓库详解(Docker Registry)

        本片文章主要是对docker的镜像仓库进行了详解。其中包含了一些常用了 docker 指令,通过举例进行详解。也详细解释了镜像仓库的工作机制和常见的镜像仓库。也实际拉去和运行了一些镜像。希望本篇文章会对你有所帮助! 文章目录 一、什么是Docker Registry 二、镜像仓库

    2024年02月03日
    浏览(30)
  • docker registry删除远程仓库镜像

    当集群内使用registry做为镜像仓库时,镜像长期积累会导致本地和远程仓库镜像占用大量的磁盘空间,这时我们需要对一些无用镜像进行定期清理。  从registry容器里面将/etc/docker/registry/config.yml复制出来: 默认config.yml内容如下: 设置config.yml,在storage节点添加delete配置设置为

    2024年02月11日
    浏览(25)
  • Docker registry镜像仓库,私有仓库及harbor管理详解

    目录 registry镜像仓库概述 Docker 镜像仓库(Docker Registry): registry 容器: 私有仓库概述 搭建本地私有仓库示例 Harbor概述 harbor架构 详解构成 Harbor由容器构成 Harbor部署示例 环境准备 部署Docker-Compose服务 部署 Harbor 服务 启动Harbor 查看 Harbor 启动镜像 创建一个新项目 在其他客

    2024年01月18日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包