harbor镜像仓库安装

2023-03-26 21:40:54 浏览数 (1)

Harbor是一个用于管理Docker镜像的开源企业级Registry服务器。它提供了用户管理、访问控制和镜像复制等功能,可以帮助企业更好地管理和分发Docker镜像。本文将介绍如何在Linux系统中安装和配置Harbor镜像仓库。

一、环境准备

在安装Harbor之前,需要确保系统中已经安装了Docker和Docker Compose。如果没有安装,可以按照以下步骤进行安装。

  1. 安装Docker

在Ubuntu系统中,可以使用以下命令安装Docker。

代码语言:javascript复制
sqlCopy codesudo apt-get update
sudo apt-get install docker.io

在CentOS系统中,可以使用以下命令安装Docker。

代码语言:javascript复制
Copy codesudo yum install docker
  1. 安装Docker Compose

在Linux系统中,可以使用以下命令安装Docker Compose。

代码语言:javascript复制
bashCopy codesudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

sudo chmod  x /usr/local/bin/docker-compose

二、安装Harbor

  1. 下载Harbor

可以从Harbor的官方网站https://github.com/goharbor/harbor/releases 下载最新的稳定版本。在本文中,我们将下载版本2.2.2。

代码语言:javascript复制
rubyCopy codewget https://github.com/goharbor/harbor/releases/download/v2.2.2/harbor-offline-installer-v2.2.2.tgz
  1. 解压Harbor
代码语言:javascript复制
Copy codetar xvf harbor-offline-installer-v2.2.2.tgz
  1. 配置Harbor

在解压后的目录中,有一个文件夹名为harbor,其中包含了安装Harbor所需的所有文件和配置。进入该目录并编辑harbor.yml文件,对Harbor进行配置。

代码语言:javascript复制
bashCopy codecd harbor/
vi harbor.yml

在harbor.yml文件中,需要对以下几个参数进行配置:

  • hostname:填写Harbor所在主机的主机名或IP地址。
  • http: port: Harbor的HTTP端口,如果没有指定,则默认为80。
  • https: port: Harbor的HTTPS端口,如果没有指定,则默认为443。
  • data_volume: Harbor的数据存储路径。
  • harbor_admin_password: Harbor管理员密码。
  • certificate: 如果需要使用自签名证书,则需要将证书文件拷贝到Harbor目录下,并在harbor.yml文件中进行配置。

下面是一个示例配置:

代码语言:javascript复制
yamlCopy codehostname: harbor.example.com
http:
  port: 80
https:
  port: 443
data_volume: /data/harbor
harbor_admin_password: Harbor12345
  1. 安装Harbor

在完成配置后,可以使用Docker Compose来安装Harbor。

代码语言:javascript复制
bashCopy codesudo ./install.sh --with-clair

这个命令会启动Harbor的所有组件,并创建必要的数据库和用户。

三、配置Harbor

  1. 配置Docker客户端

在使用Harbor之前,需要在Docker客户端中配置Harbor服务器的地址和认证信息。可以通过以下步骤进行配置。

  1. 编辑Docker配置文件

在Linux系统中,Docker的配置文件位于/etc/docker目录下。使用vi编辑该文件。

代码语言:javascript复制
bashCopy codesudo vi /etc/docker/daemon.json

如果该文件不存在,则需要先创建该文件。

  1. 添加Harbor服务器地址

在daemon.json文件中,添加以下内容:

代码语言:javascript复制
jsonCopy code{
  "insecure-registries": ["harbor.example.com"]
}

其中,harbor.example.com为Harbor服务器的地址。这个配置项的作用是告诉Docker客户端可以信任该服务器。

  1. 重新加载Docker配置

编辑完成后,需要重新加载Docker的配置。

代码语言:javascript复制
Copy codesudo systemctl daemon-reload
sudo systemctl restart docker
  1. 配置Harbor

除了在安装时进行配置外,还可以在Harbor中进行进一步的配置。可以通过Harbor的Web界面来完成以下操作。

  1. 登录Harbor

打开浏览器,输入Harbor服务器的地址。如果一切正常,会显示Harbor的登录界面。输入管理员用户名和密码,登录到Harbor的Web界面。

  1. 配置用户和权限

在Harbor的Web界面中,可以创建用户和组,并对用户和组进行权限控制。

  1. 配置镜像仓库

在Harbor中,可以创建多个镜像仓库,并设置不同的访问权限。可以按照以下步骤来创建一个镜像仓库。

  • 点击“Repositories”选项卡,然后点击“New Project”按钮。
  • 输入项目名称和描述,并选择所属的命名空间。命名空间用于将多个项目进行分组。
  • 设置镜像仓库的访问权限。可以选择公开或私有,并设置具体的用户或组的访问权限。
  • 点击“Create”按钮来创建镜像仓库。
  1. 上传和下载镜像

在Harbor中,可以使用Docker客户端来上传和下载镜像。可以按照以下步骤来上传一个镜像。

  • 使用Docker客户端登录到Harbor服务器。
代码语言:javascript复制
Copy codedocker login harbor.example.com

其中,harbor.example.com为Harbor服务器的地址。

  • 从Docker Hub上下载一个镜像。
代码语言:javascript复制
Copy codedocker pull nginx
  • 重新打标签并上传镜像到Harbor服务器。
代码语言:javascript复制
bashCopy codedocker tag nginx harbor.example.com/project/nginx
docker push harbor.example.com/project/nginx

其中,project/nginx为在Harbor中创建的镜像仓库的名称。

五、总结

通过以上步骤,我们可以在Linux系统中安装和配置Harbor镜像仓库。Harbor提供了强大的镜像管理和访问控制功能,可以帮助企业更好地管理和分发Docker镜像。如果您想了解更多关于Harbor的内容,请查阅Harbor官方文档。

0 人点赞