Docker--harbor私有仓库部署与管理

文章目录

  • 一、搭建本地私有仓库
    • 1.1 下载 `registry` 镜像
    • 1.2 配置 `daemon.json`
      • 1.2.1 编辑 `daemon.json` 文件
      • 1.2.2 重启 Docker 服务
    • 1.3 运行 `registry` 容器
      • 1.3.1 运行容器命令
      • 1.3.2 参数解释
    • 1.4 为镜像打标签并上传到私有仓库
      • 1.4.1 镜像打标签
      • 1.4.2 上传镜像到私有仓库
      • 1.4.3 查看私有仓库中的镜像
        • 1.4.3.1 列出所有镜像
        • 1.4.3.2 查看镜像的标签
    • 1.5 测试私有仓库的镜像下载
      • 1.5.1 删除本地的 CentOS 镜像
      • 1.5.2 从私有仓库拉取镜像
  • 二、Harbor 简介
    • 2.1 什么是 Harbor
    • 2.2 Harbor 的特性
    • 2.3 Harbor 的构成
    • 2.4 部署 Harbor
      • 2.4.1 部署 Docker Compose
      • 2.4.2 部署 Harbor 服务
      • 2.4.3 启动 Harbor
    • 2.5 配置 Harbor 项目
    • 2.6 客户端配置及镜像上传
  • 三、维护管理 Harbor
    • 3.1 通过 Harbor Web 创建项目
    • 3.2 创建 Harbor 用户
      • 3.2.1 创建用户并分配权限
      • 3.2.2 添加项目成员
      • 3.2.3 客户端上使用普通账户操作镜像
    • 3.3 查看日志
    • 3.4 修改 Harbor.cfg 配置文件
    • 3.5 移除 Harbor 服务容器并保留数据
      • 3.5.1 移除 Harbor 服务容器
      • 3.5.2 打包项目镜像数据
    • 3.6 重新部署 Harbor 并移除全部数据

一、搭建本地私有仓库

1.1 下载 registry 镜像

首先下载 registry 镜像:

docker pull registry

1.2 配置 daemon.json

1.2.1 编辑 daemon.json 文件

daemon.json 文件中添加私有镜像仓库地址:

vim /etc/docker/daemon.json

文件内容如下:

{
   
  "insecure-registries": ["192.168.10.23:5000"],  # 添加,注意用逗号结尾
  "registry-mirrors": ["https://ae3f5qei.mirror.aliyuncs.com"]
}

1.2.2 重启 Docker 服务

systemctl restart docker.service

1.3 运行 registry 容器

1.3.1 运行容器命令

运行 registry 容器:

docker run -itd -v /data/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest

1.3.2 参数解释

  • -itd:打开伪终端进行交互操作,并在后台运行。
  • -v:将宿主机的 /data/registry 目录挂载到容器的 /var/lib/registry,实现数据持久化。
  • -p:映射宿主机的 5000 端口。
  • --restart=always:指定重启策略,容器退出时总是重启。
  • --name registry:命名容器为 registry

1.4 为镜像打标签并上传到私有仓库

1.4.1 镜像打标签

docker tag centos:7 192.168.10.23:5000/centos:v1

1.4.2 上传镜像到私有仓库

docker push 192.168.10.23:5000/centos:v1

1.4.3 查看私有仓库中的镜像

1.4.3.1 列出所有镜像
curl http://192.168.10.23:5000/v2/_catalog
1.4.3.2 查看镜像的标签
curl http://192.168.10.23:5000/v2/centos/tags/list

1.5 测试私有仓库的镜像下载

1.5.1 删除本地的 CentOS 镜像

docker rmi -f 8652b9f0cb4c

1.5.2 从私有仓库拉取镜像

docker pull 

你可能感兴趣的:(docker,容器,运维)