文章目录前言一、Harbor 核心认知与架构介绍1.1 什么是 Harbor1.2 为什么企业不用原生 Registry首选 Harbor1.3 Harbor 核心架构组件通俗讲解1.4 适用场景区分二、单机版 Harbor 快速部署零报错实战2.1 下载 Harbor 离线安装包2.2 核心配置文件修改2.3 解决内网 HTTP 镜像推送报错2.4 一键安装启动 Harbor2.5 访问 Harbor 后台2.6 Harbor 日常启停命令三、镜像打标签、推送私有仓库完整实操3.1 核心原理3.2 实操步骤第一步本地准备自定义镜像第二步给镜像打私有仓库标签关键步骤第三步本地登录私有 Harbor 仓库第四步推送镜像到私有仓库第五步服务器拉取私有镜像四、企业团队协作镜像版本管理规范4.1 项目空间分类管理4.2 镜像版本命名规范企业标准4.3 团队权限分配4.4 镜像生命周期管理五、本篇总结前言通过前五篇文章的学习我们已经掌握了 Docker 镜像制作、容器运行、数据持久化、网络配置、Compose 多容器编排能够快速搭建本地完整开发环境。但在真实企业团队开发、服务器部署场景中我们会遇到一个核心问题自定义镜像无法高效共享、统一管理。默认的 Docker 公共仓库 Docker Hub 存在诸多企业使用痛点外网访问速度慢、拉取镜像超时严重影响部署效率公共仓库镜像公开透明项目业务镜像上传存在代码与数据安全风险免费仓库有镜像数量、存储容量限制无法适配企业大量业务镜像存储没有权限管控、版本管理、镜像清理、安全扫描等企业级功能无法适配团队协作为了解决企业镜像私有化存储、团队共享、版本管控的需求Harbor 企业级私有镜像仓库成为行业标准解决方案。本篇带你从零掌握 Harbor 架构原理、单机快速部署、镜像打标推送、团队协作版本管理是 Docker 进阶、企业项目上线、微服务集群部署的必备技能。一、Harbor 核心认知与架构介绍1.1 什么是 HarborHarbor 是VMware 开源、CNCF 认证的企业级 Docker 私有镜像仓库基于原生 Docker Registry 二次开发弥补了原生 Registry 功能简陋、无界面、无权限管控的短板。简单理解Harbor 就是企业内部的私人 Docker Hub专门用于存储、管理、分发团队自定义的业务镜像支持内网高速访问、权限隔离、版本管控是目前企业使用最广泛的私有镜像仓库。1.2 为什么企业不用原生 Registry首选 HarborDocker 原生 Registry 仅具备基础的镜像存储、推拉功能无任何企业级能力而 Harbor 拥有完整的生产级能力可视化 Web 界面直观管理项目、镜像、版本、用户操作简单精细化权限管理支持管理员、开发、测试多角色权限隔离适配团队协作镜像版本管理支持版本标记、删除、保留策略、镜像清理安全扫描自动检测镜像漏洞规避安全风险日志审计记录所有镜像推拉、用户操作日志便于运维排查高可用扩展支持单机、集群部署适配开发、测试、生产全环境1.3 Harbor 核心架构组件通俗讲解Harbor 本身是基于 Docker Compose 编排的多容器应用核心由 6 大组件组成新手只需掌握核心作用即可Registry核心仓库原生镜像存储组件负责真正存储、接收、分发 Docker 镜像UI可视化界面Web 管理后台提供项目创建、镜像查看、权限配置、日志查询功能Database数据库存储用户信息、项目配置、权限规则、镜像元数据版本、大小、上传时间Log日志服务统一收集所有组件操作日志用于审计和问题排查Notary安全签名实现镜像签名校验防止镜像被篡改保障镜像安全Clair漏洞扫描自动扫描镜像系统漏洞、依赖漏洞企业生产必备安全能力1.4 适用场景区分单机 Harbor适合中小企业、开发测试环境、日常团队协作部署简单、运维成本低本篇重点集群 Harbor适合大型企业、生产高可用环境搭配负载均衡实现容灾扩容二、单机版 Harbor 快速部署零报错实战Harbor 官方推荐使用离线安装包 Docker Compose部署部署简单、环境兼容稳定是企业单机部署的标准方案。前置环境要求已安装 Docker、Docker Compose前两篇已讲解安装方式2.1 下载 Harbor 离线安装包选用企业稳定版v2.10.3兼容性强、bug 少生产通用推荐离线包部署无需在线拉取镜像# 创建安装目录mkdir-p/usr/local/harborcd/usr/local/harbor# 下载离线安装包wgethttps://github.com/goharbor/harbor/releases/download/v2.10.3/harbor-offline-installer-v2.10.3.tgz# 解压安装包tar-zxvfharbor-offline-installer-v2.10.3.tgzcdharbor-offline-installer-v2.10.32.2 核心配置文件修改解压后复制模板配置文件生成正式配置文件并修改核心参数这是部署成功的关键# 复制模板配置cpharbor.yml.tmpl harbor.yml# 编辑配置文件vimharbor.yml重点修改以下 3 项核心配置新手仅改这几项即可其余默认# 1、修改仓库地址服务器IP/域名本机就写本机IPhostname:192.168.3.100# 2、关闭https开发/内网环境必备避免证书报错# http端口配置http:port:8080# 这里不使用https注释该配置#https:# https port for harbor, default is 443# port: 443# The path of cert and key files for nginx# certificate: /your/certificate/path# private_key: /your/private/key/path# 3、设置管理员初始密码自定义记住后续登录使用harbor_admin_password:Harbor123456# 4、数据存储路径建议默认持久化镜像数据data_volume:/data/harbor2.3 解决内网 HTTP 镜像推送报错Docker 默认禁止 HTTP 不安全仓库推送镜像需要手动配置信任私有仓库地址否则后续 push 会报错# 创建docker配置文件vim/etc/docker/daemon.json写入以下配置替换为你的 Harbor 服务器 IP{insecure-registries:[192.168.3.100:80]}重启 Docker 生效配置systemctl daemon-reload systemctl restartdocker2.4 一键安装启动 Harbor执行官方安装脚本自动生成 Compose 配置、启动所有 Harbor 容器# 一键安装并后台启动./install.sh-d2.5 访问 Harbor 后台启动完成后浏览器访问http://你的服务器IP用户名admin密码刚才配置的Harbor123456登录成功即代表私有仓库部署完成全程无复杂配置开箱即用。2.6 Harbor 日常启停命令Harbor 基于 Docker Compose 编排所有操作均在安装目录执行# 停止Harbordockercompose down# 启动Harbordockercompose up-d# 重启Harbordockercompose restart三、镜像打标签、推送私有仓库完整实操部署完 Harbor 后核心实操就是本地镜像上传私有仓库、服务器拉取私有镜像这是企业上线的核心流程。完整流程本地镜像 → 打私有仓库标签 → 登录仓库 → 推送镜像 → 服务器拉取镜像3.1 核心原理Docker 推送镜像时会根据镜像前缀标签识别仓库地址无前缀默认推送到官方 Docker Hub自定义前缀仓库IP/域名推送到指定私有 Harbor 仓库3.2 实操步骤第一步本地准备自定义镜像以 SpringBoot 业务镜像为例本地已有镜像springboot-demo:1.0第二步给镜像打私有仓库标签关键步骤标签格式Harbor地址/项目名/镜像名:版本号# 格式docker tag 原镜像:版本 仓库IP/项目名/镜像名:版本dockertag springboot-demo:1.0192.168.3.100/dev/springboot-demo:1.0说明dev是 Harbor 后台创建的项目名称用于分类管理镜像。第三步本地登录私有 Harbor 仓库dockerlogin192.168.3.100-uadmin-pHarbor123456提示Login Succeeded即登录成功。第四步推送镜像到私有仓库dockerpush192.168.3.100/dev/springboot-demo:1.0推送完成后登录 Harbor 后台即可看到刚刚上传的镜像支持在线查看、下载、删除。第五步服务器拉取私有镜像其他开发/服务器配置信任仓库后直接拉取镜像dockerlogin192.168.3.100dockerpull192.168.3.100/dev/springboot-demo:1.0四、企业团队协作镜像版本管理规范Harbor 最大的企业价值就是标准化团队镜像管理解决多人开发镜像混乱、版本不统一、镜像丢失的问题下面是企业通用落地规范。4.1 项目空间分类管理在 Harbor 后台创建不同项目实现环境与业务隔离通用规范dev开发环境镜像存放开发测试版本test测试环境镜像存放测试验收版本prod生产环境镜像仅存放稳定上线版本public公共基础镜像mysql、redis、nginx 等全员可拉取4.2 镜像版本命名规范企业标准杜绝 latest 模糊版本采用时间功能环境精准版本号避免版本覆盖丢失开发版项目名-v1.0.0-dev-20260510测试版项目名-v1.0.0-test-20260510生产版项目名-v1.0.0-prod优势版本可追溯、可回滚、不会误覆盖正式镜像。4.3 团队权限分配管理员负责仓库配置、项目创建、权限分配、镜像清理开发人员仅拥有 dev 项目推拉权限禁止操作生产镜像测试人员拥有 test 项目查看、拉取权限实现权限隔离避免误删、误改生产镜像保障线上环境稳定。4.4 镜像生命周期管理开启 Harbor 自动清理策略自动清理30天未使用的开发镜像释放磁盘空间生产镜像永久保留如需更新版本新增版本号不覆盖旧版本上线前通过 Harbor 漏洞扫描杜绝高危漏洞镜像上线五、本篇总结1、Harbor 是企业级私有镜像仓库弥补了官方 Docker Hub 不安全、速度慢、无管控的短板是团队开发、项目上线的必备基础设施2、Harbor 基于 Docker Compose 多容器部署核心由仓库、UI、数据库、日志、安全扫描组件构成结构清晰、运维简单3、单机版 Harbor 部署核心关闭 HTTPS、配置 Docker 信任私有仓库、一键脚本安装新手可快速落地4、镜像推拉核心流程打私有标签 → 登录仓库 → 推送镜像 → 远程拉取是企业镜像分发的标准流程5、通过 Harbor 项目分类、版本规范、权限管控可实现团队镜像标准化管理彻底解决镜像混乱、版本不一致、安全风险等问题为后续 K8s 集群镜像部署打下基础。