如何使用 VMware Harbor 与 MinIO?

Harbor 是一款企业级 Docker 注册表服务器,用于存储和分发容器镜像。请遵循本文档使用 MinIO 对象存储服务器作为 Harbor 容器注册表的存储后端。

先决条件

安装并运行 MinIO 服务器

docker run -p 9000:9000 --name minio \
  -e "MINIO_ACCESS_KEY=minio" \
  -e "MINIO_SECRET_KEY=minio123" \
  -v /mnt/minio/export:/export \
  -v /mnt/minio/config:/root/.minio \
  minio/minio:RELEASE.2017-02-16T01-47-30Z server /export

安装 Harbor 注册表

安装程序的二进制文件可以从 发布 页面下载。请遵循 Harbor 安装和配置指南 获取更多说明。

编辑 'config.yml' 文件

common/templates/registry/config.yml 文件的存储部分(缓存配置下方)添加 s3 配置。这是一个完整的示例 config.yml,供您参考。

storage:
    s3:
      accesskey: minio
      secretkey: minio123
      region: us-east-1
      regionendpoint: http://YOUR-MINIO-IP:9000
      bucket: docker-registry
      encrypt: false
      secure: false
      v4auth: true
      chunksize: 5242880
      rootdirectory: /

启动 Harbor 注册表

./install.sh
[Step 1]: preparing environment ...
loaded secret key
...
...
✔ ----Harbor has been installed and started successfully.----

Now you should be able to visit the admin portal at https://172.23.0.7. 
For more details, please visit https://github.com/vmware/harbor .

请注意,默认的管理员用户名/密码为 admin/Harbor12345

创建自定义项目

访问 https://172.23.0.7 并登录以创建名为 myproject 的项目。

推送第一个镜像

在尝试推送第一个镜像之前,请登录到 Harbor 注册表。

docker login 172.23.0.7
Username: admin
Password: Harbor12345
Login Succeeded

继续将您的第一个镜像推送至 Harbor 注册表。

docker tag ubuntu 172.23.0.7/myproject/myrepo
docker push 172.23.0.7/myproject/myrepo
The push refers to a repository [172.23.0.7/myproject/myrepo]
5eb5bd4c5014: Pushed 
d195a7a18c70: Pushed 
...

要检查镜像是否已成功上传,请通过 http://YOUR-MINIO-IP:9000 使用用户名 minio 和密码 minio123 从 MinIO 浏览器控制台登录。

问题

加入 MinIO 社区。