当前位置:

首页 > 系统应用 > Linux怎么安装Harbor企业级镜像仓库 Docker私有化部署详解

Linux怎么安装Harbor企业级镜像仓库 Docker私有化部署详解

搞定Harbor的安装,很多时候不在于你下载的安装包版本有多新,而在于三个最基础的依赖是否真正到位。如果docker、docker compose或者openssl其中任何一个掉了链子,那么./install.sh脚本要么会静默失败,要么就会陷入容器反复启动又退出的死循环。 检查并安装 Harbor

搞定Harbor的安装,很多时候不在于你下载的安装包版本有多新,而在于三个最基础的依赖是否真正到位。如果docker、docker compose或者openssl其中任何一个掉了链子,那么./install.sh脚本要么会静默失败,要么就会陷入容器反复启动又退出的死循环。

Linux怎么安装Harbor企业级镜像仓库 Docker私有化部署详解

检查并安装 Harbor 的三个硬性依赖

很多所谓的“安装失败”,其实问题根源在依赖上,而不是后续的配置。这一步必须逐一排查,不能跳过:

  • Docker版本:运行docker --version,确保版本不低于20.10failed to create endpoint这类网络错误。
  • Docker Compose版本:这里有个关键点,需要的是docker compose(即Compose V2),而不是旧的docker-compose(V1)。运行docker compose version,版本需≥2.0.0。如果提示命令未找到,通常需要去GitHub releases页面下载对应的二进制文件,然后放到/usr/local/bin/目录下。
  • OpenSSL:运行which openssl,必须有输出路径。在一些最小化安装的CentOS或RHEL系统上,这个包可能默认没装,用yum install -y openssl补上即可。

离线安装时 harbor.yml 的三处必改项

解压离线安装包后,里面的harbor.yml配置文件可不能直接拿来就用。有三个地方是必须根据你的环境调整的,错一个都可能导致登录失败或者无法访问:

  • hostname:这个值必须设置为客户端(也就是未来要docker login和docker push的机器)能够解析的地址。可以是域名(如harbor.example.com),也可以是宿主机的真实IP地址(如192.168.10.50)。切记不要写成localhost或127.0.0.1,否则从其他机器登录时会直接报unauthorized: authentication required。
  • HTTPS配置:如果只是测试环境,不打算启用HTTPS,那么需要将配置文件中整个https:配置块注释掉。同时,确保顶层的https.enabled设置为false,并为HTTP服务指定一个端口,比如http.port: 8080(避免与系统80端口冲突)。
  • 数据卷路径:默认的数据存储路径是/data。对于生产环境,建议将其修改到一个独立的、空间充足的路径,例如/opt/harbor-data。修改后,必须提前执行chown 10000:10000 /opt/harbor-data,因为Harbor内部的容器进程是以UID 10000的用户运行的,没有这个权限,后续服务会因无法写入数据而启动失败。

容器启动后立即退出?先看 harbor-db 日志

执行完./install.sh后,如果发现docker ps -a列表里的harbor-core或者harbor-jobservice等容器状态是Exited (1),先别急着重装整个Harbor。这时候,十有八九是数据库容器harbor-db没起来,拖垮了所有依赖它的服务。

  • 可以运行docker inspect harbor-db | grep -A 5 "Status"来确认,如果输出中包含"ExitCode": 1,那基本就是它的问题。
  • 导致harbor-db启动失败最常见的原因有两个:一是磁盘空间不足(尤其是/data/database所在的分区);二是/data/database目录的权限不对。解决方法是检查磁盘空间,并确保对该目录执行chown -R 10000:10000 /data/database。
  • 还有一种情况,所有容器都显示running,但用浏览器就是打不开http://your-host:8080。这时候别忘了检查宿主机的防火墙,运行firewall-cmd --list-ports看看是否放行了你在harbor.yml里配置的那个http.port端口。

客户端 push 镜像报 x509 certificate signed by unknown authority

这是在启用HTTPS后,客户端推送镜像时最常遇到的错误。问题不在Harbor服务器端,而在于客户端的Docker守护进程不信任Harbor使用的自签名证书。

  • 如果你使用的是Harbor自动生成的证书(即没有配置自己的CA证书),那么需要将Harbor服务器上生成的harbor.crt文件(通常位于common/config/registry/目录下)拷贝到客户端机器的一个特定目录。
  • 这个目录路径必须严格匹配Harbor的访问地址和端口。例如,如果你的hostname设为harbor.example.com,https.port是443,那么客户端就需要创建目录/etc/docker/certs.d/harbor.example.com/,并将harbor.crt证书文件放入其中。
  • 完成拷贝后,记得在客户端重启Docker服务(systemctl restart docker),否则新的证书不会被加载。

总的来说,Harbor安装的复杂性并不在于步骤繁多,而在于它的各个核心组件(数据库、Redis、镜像仓库、核心服务)都以容器方式运行,彼此之间存在严格的启动顺序和权限依赖。经验表明,最容易出岔子的地方,往往就是data_volume数据目录的属主设置,以及harbor-db这个基础数据库的启动状态——只要这两关过了,剩下的服务大概率都能顺利跑起来。

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
作者最新文章
系统应用
相关文章 更多
Apifox私有化部署面向企业合规需求,API资产管理进入内网协作场景
Apifox私有化部署面向企业合规需求,API资产管理进入内网协作场景

Apifox提供私有化部署方案,将API管理平台部署至企业内网,满足数据不出内网、权限可控与审计留痕等合规要求,同时集中沉淀API资产,规范字段命名、响应结构等接口管理。但需企业自行承担运维责任,适合大型组织与敏感行业。

墨刀企业版继续面向权限、数据安全和私有化部署,大型团队协作管理需求更明确
墨刀企业版继续面向权限、数据安全和私有化部署,大型团队协作管理需求更明确

墨刀企业版整合企业版、私有化部署与需求诊断,从设计工具升级为综合平台。核心能力包括AES-256加密、SSL/TLS传输、资产交接、版本记录及分布式集群备份,满足金融、物联网等行业对权限、数据安全与私有化部署的刚性需求。

基于云原生的私有化PaaS平台交付实践
基于云原生的私有化PaaS平台交付实践

本文将解读如何利用云原生解决私有化交付中的问题,进而打造一个 PaaS 平台,提升业务平台的复用性。在进入正题之前,有必要先明确两个关键词:PaaS 平台:多个核心业务服务作为一个整体平台去封装,以平台形式提供服务。私有化交付:平台需要部署私有云环境中,要面对无网情况下依然可以运转。传统交付痛点如上

查看更多
精品专题 更多
装机必备
装机必备

正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

Windows
Windows

正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

PDF教程
PDF教程

正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

Mac软件 更多
Postman macOS版
Postman macOS版
Mac

Postman是一套面向API全生命周期的开发与测试平台,可在Mac上发送和调试多种协议请求,管理集合、环境及认证信息,并完成脚本测试、模拟服务、监控、文档发布和团队协作。它适合开发、测试及运维人员使用,提供个人免费方案。

Docker Desktop macOS版
Docker Desktop macOS版
Mac

Docker Desktop 是 Docker 官方为 Mac 提供的容器开发环境,集成 Docker Engine、命令行工具、Compose、Build、Kubernetes 与图形化管理界面。

Android Studio macOS版
Android Studio macOS版
Mac

Android Studio 是 Google 面向安卓应用开发提供的官方集成开发环境,基于 IntelliJ IDEA 构建。它整合智能代码编辑、Gradle 构建、界面预览、设备模拟、性能分析、调试测试及 APK 分析等工具。

WINDOWS 更多
PixPix 网页版
PixPix 网页版
Windows

PixPix 是面向品牌、卖家和内容团队的在线 AI 图片视频创作平台,提供图视频 Agent、无限画布、图片生成、视频生成、自然语言编辑及商品套图、产品精修和带货视频等电商工具。

Postman Windows版
Postman Windows版
Windows

Postman 是面向 API 全生命周期的开发与协作平台。Windows 桌面版可用于构建和发送 HTTP、GraphQL、gRPC、WebSocket、MQTT 等请求,并提供环境变量、集合、脚本测试、模拟服务、监控、文档及团队工作区等

Docker Desktop Windows版
Docker Desktop Windows版
Windows

Docker Desktop 为 Windows 开发者提供集成式容器环境,内置 Docker Engine、命令行工具、Compose、Build 与 Kubernetes 等组件,可在本机完成镜像构建、容器运行、日志查看和资源管理。