第24章 Docker私服harbor构建企业内部Docker 镜像管理和分发服务

1,277 阅读3分钟

harbor简介

Harbor 是由 VMware(之前由华为开发并开源,后捐赠给 Cloud Native Computing Foundation, CNCF)维护的企业级容器镜像仓库,旨在提供更安全、更高效的 Docker 镜像管理和分发服务。Harbor 增强了 Docker Registry 的功能,提供了用户管理和访问控制、镜像签名验证、镜像复制和漏洞扫描等特性,非常适合企业内部使用。

Harbor 解决了企业在使用 Docker 和容器技术时面临的多个痛点需求,特别是在镜像管理和安全性方面。以下是 Harbor 主要解决的几个关键痛点:

  1. 安全性和合规性 镜像签名和验证:通过集成 Notary,Harbor 支持对镜像进行数字签名,确保镜像的真实性和完整性。这对于防止篡改和恶意软件至关重要。 漏洞扫描:Harbor 内置支持与 Clair 或 Trivy 等工具集成,可以自动扫描镜像中的已知漏洞,并提供详细的报告。这有助于企业及时更新或修复潜在的安全风险。 RBAC(基于角色的访问控制):提供了精细的权限管理机制,确保只有授权用户才能执行特定操作,增强了系统的安全性。 审计日志:记录所有系统活动,便于追踪用户的操作历史,满足企业的合规性和安全审查要求。
  2. 高效的镜像管理和分发 图形化用户界面 (GUI):Harbor 提供了一个直观的 Web 界面,让用户可以轻松地浏览、搜索和管理镜像,而无需依赖命令行工具。 镜像复制:支持跨地域或多数据中心之间的镜像同步,保证镜像的一致性,同时减少了下载延迟,提高了部署效率。 自定义策略:允许管理员为不同的项目设置保留策略、配额限制等,优化存储资源的使用,减少不必要的开销。
  3. 简化运维工作 LDAP/AD 集成:可以与企业现有的 LDAP 或 Active Directory 目录服务集成,简化用户认证流程,降低运维复杂度。 高可用性部署:支持 HA 模式部署,通过负载均衡器和数据库集群等方式提升系统的可靠性和性能,减少单点故障的风险。
  4. 促进协作和开发效率 团队协作:通过 RBAC 和项目管理功能,不同团队成员可以根据其角色获得相应的权限,从而更高效地合作。 CI/CD 集成:作为持续集成和持续交付管道的一部分,Harbor 帮助开发团队自动化构建、测试和部署应用,加速产品迭代周期。
  5. 国际化和支持多语言 多语言界面:支持多种语言,包括中文、英文等,适应不同地区用户的需求,提升了用户体验。

安装harbor和配置

1.下载harbor wget github.com/goharbor/ha…

image.png

2.解压 tar -xvf harbor-offline-installer-v2.11.2.tgz

image.png

3.进入解压之后的文件夹harbor cd harbor

image.png

4.复制harbor.yml.tmpl文件并重命名harbor.yml

vim harbor.yml 

然后修改hostName为当前主机的ip地址 例如:hostname:192.168.0.100 port:86

image.png

5.然后执行harbor解压包下的install.sh文件 sh install.sh 安装前要制定证书

openssl req -newkey rsa:4096 -nodes -sha256 -keyout harbor.key -x509 -days 365 -out harbor.crt

修改docker-compose.yml文件加入证书配置:

image.png

image.png 6.执行成功之后可以在浏览器中输入地址访问harbor http:192.168.0.100:86/harbor/sign-in

用户名:admin 密码:Harbor12345 image.png

7.如果不想通过ip去访问harbor,也可以配置域名 hub.budaos.com

vim /etc/hosts 
192.168.0.100 hub.budaos.com

访问

image.png