Harbor 是一个开源的企业级镜像仓库,它提供了一个用于存储、签名和扫描 Docker 镜像的 Registry UI。Harbor 可以作为 Docker 镜像的私有仓库,帮助用户管理和部署 Docker 镜像,同时提供了镜像安全扫描、权限管理、项目管理等功能。
Harbor 的主要特点
-
用户友好的界面:Harbor 提供了一个简洁明了的 Web 界面,用户可以通过这个界面轻松管理和操作镜像。
-
权限管理:Harbor 支持基于角色的访问控制(RBAC),允许管理员对不同的用户和团队设置不同的权限。
-
镜像安全扫描:集成了安全扫描工具,如 Clair,可以对存储在 Harbor 中的镜像进行漏洞扫描,并生成报告。
-
镜像签名:Harbor 支持镜像签名功能,确保镜像的完整性和来源的可靠性。
-
多项目管理:Harbor 允许用户创建多个项目来组织镜像,每个项目都可以有自己的权限设置和成员。
-
与 Docker 完美集成:Harbor 可以无缝集成到 Docker 环境中,作为私有的 Docker Registry 使用。
如何部署 Harbor
部署 Harbor 的方法有很多,可以通过 Docker 容器、Kubernetes、VM 或者物理服务器来部署。以下是使用 Docker 部署 Harbor 的基本步骤:
-
拉取 Harbor 的 Docker 镜像:
docker pull goharbor/harbor:latest -
启动 Harbor 容器:
docker run -d -p 80:80 -p 85:85 \ -v /data/harbor/config:/etc/harbor \ -v /data/harbor/registry:/registry \ -v /data/harbor/jobservice:/jobservice \ --name harbor -e HARBOR_ADMIN_PASSWORD=yourpassword goharbor/harbor:latest在这个命令中,
yourpassword应该被替换为你为 Harbor 管理员账户设置的密码。/data/harbor目录需要提前创建,用于存储配置文件、镜像数据和作业服务数据。 -
访问 Harbor 界面:
在浏览器中输入
http://<your-server-ip>,就可以访问 Harbor 的 Web 界面了。首次登录时,需要使用 Harbor 管理员账户进行配置。
使用 Harbor 管理镜像
-
登录 Harbor:使用你的用户名和密码登录 Harbor 的 Web 界面。
-
创建项目:在 Harbor 中创建新的项目,可以是公共的也可以是私有的。
-
推送镜像:使用 Docker 命令推送镜像到 Harbor。例如:
docker tag myimage:latest myregistry.com/myproject/myimage:latest docker push myregistry.com/myproject/myimage:latest在这个例子中,
myregistry.com是你的 Harbor 服务器地址,myproject是你在 Harbor 中创建的项目名称。 -
拉取镜像:同样使用 Docker 命令从 Harbor 拉取镜像。
docker pull myregistry.com/myproject/myimage:latest
Harbor 是一个强大的工具,可以帮助你更好地管理和部署 Docker 镜像。通过上述步骤,你可以轻松地在你的环境中部署和使用 Harbor。