本地 AI 工具的爆炸性增长带来了一个新问题:设置完整的本地 AI 开发环境需要安装和配置多个独立的服务,每个服务都有自己的依赖项、配置和网络需求。Harbor 只需一条 docker compose up 命令就能解决这个问题,在本地机器上启动整个预配接的 AI 堆栈。
作为一个开源项目开发,Harbor 将最受欢迎的本地 AI 工具打包成一个紧密的容器化堆栈。只需一条命令,您就能获得提供本地 LLM 服务的 Ollama、提供 ChatGPT 兼容聊天界面的 Open WebUI、用于图像生成工作流程的 ComfyUI,以及可选组件如用于向量存储的 ChromaDB、用于持久化的 PostgreSQL 以及各种监控和管理工具。
Harbor 在希望尝试本地 AI 模型而又不花费数小时设置的 AI 开发者和爱好者中特别受欢迎。它还作为团队部署 AI 基础设施的参考架构,展示了如何将现代 AI 堆栈的各个组件连接在一起。该项目的 Docker Compose 配置设计为既全面又易于理解,使其易于学习和改编。
Harbor 的架构如何连接各组件?
Harbor 的架构围绕「预配接连接」的原则设计——每个组件都配置为与其他组件开箱即用。
graph TD
A[Docker Compose] --> B[Harbor 网络]
B --> C[Ollama]
B --> D[Open WebUI]
B --> E[ComfyUI]
B --> F[ChromaDB]
B --> G[PostgreSQL]
H[用户浏览器] --> D
H --> E
C --> I[本地 LLM]
D --> C
E --> F
D --> G
D --> F
Harbor 自动处理的关键接线包括:Open WebUI 连接到 Ollama 进行模型推理,ComfyUI 访问 Ollama 进行文本编码,两个服务共享相同的 GPU 资源,ChromaDB 为 RAG 工作流程提供向量存储,以及 PostgreSQL 持久化聊天历史和用户数据。
Harbor 堆栈包含哪些组件?
Harbor 提供一组模块化组件,可根据您的需求启用或禁用。
| 组件 | 用途 | 默认 | Docker 镜像 |
|---|---|---|---|
| Ollama | 本地 LLM 服务 | 启用 | ollama/ollama |
| Open WebUI | 聊天界面 | 启用 | ghcr.io/open-webui/open-webui |
| ComfyUI | 图像生成 | 禁用 | comfyui/comfyui |
| ChromaDB | 向量数据库 | 禁用 | chromadb/chroma |
| PostgreSQL | 关系型数据库 | 禁用 | postgres:16 |
| pgAdmin | 数据库管理 | 禁用 | dpage/pgadmin4 |
| Watchtower | 自动更新容器 | 禁用 | containrrr/watchtower |
每个组件都定义为一个 Docker Compose 服务,具有预先配置的环境变量、卷挂载和网络设置。启用额外组件通常只需要在 docker-compose.yml 文件中取消注释几行。
如何为不同使用场景配置 Harbor?
Harbor 的灵活性来自其环境变量配置和 Docker Compose 配置文件。
| 使用场景 | 启用组件 | 配置说明 |
|---|---|---|
| 基本 LLM 聊天 | Ollama + Open WebUI | 设置 OLLAMA_MODELS 以指定默认模型 |
| RAG 原型 | + ChromaDB | 在 Open WebUI 中配置嵌入模型 |
| 图像生成 | + ComfyUI | 需要 GPU,设置 COMFYUI_MODELS |
| 完整开发 | 所有组件 | 需要 16GB+ RAM,建议配备 GPU |
| 轻量级 | 仅 Open WebUI | 在另一台机器上使用 Ollama |
| CI 测试 | 仅 Ollama | 最小资源占用 |
配置通过项目根目录中的 .env 文件处理。Harbor 包含一个全面的 .env.example 文件,其中包含每个设置的详细注释。
Harbor 有什么硬件要求?
硬件要求根据您启用的组件和运行的模型而有显著差异。
| 配置 | 最低 RAM | 建议 RAM | GPU | 存储 |
|---|---|---|---|---|
| Harbor + Ollama (聊天) | 8 GB | 16 GB | 可选 | 10-50 GB |
| Harbor + Ollama (RAG) | 16 GB | 32 GB | 可选 | 20-100 GB |
| Harbor + Ollama + ComfyUI | 16 GB | 32 GB | 8GB+ 显存 | 50-200 GB |
| Harbor 完整堆栈 | 32 GB | 64 GB | 12GB+ 显存 | 100-500 GB |
Ollama 可以在仅 CPU 的系统上运行小型模型(3B-13B 参数),但较大模型(30B+)和 ComfyUI 图像生成需要具备能力的 GPU。Harbor 在可用时会自动将 GPU 设备暴露给容器。
FAQ
什么是 Harbor? Harbor 是一个开源容器化 LLM 工具包,只需一条 Docker Compose 命令即可启动完整的预配接 AI 堆栈——包括 Ollama、Open WebUI、ComfyUI 等——用于本地 AI 开发。
Harbor 堆栈包含哪些组件? Harbor 包含用于本地模型服务的 Ollama、类似 ChatGPT 界面的 Open WebUI、用于 Stable Diffusion 工作流程的 ComfyUI,以及可选组件如用于向量存储的 ChromaDB、用于持久化的 PostgreSQL 和监控工具。
如何开始使用 Harbor?
您需要安装 Docker 和 Docker Compose。克隆仓库,可选编辑配置,然后运行 docker compose up。Harbor 会自动下载并启动所有组件。
我可以自定义 Harbor 部署哪些组件吗? 可以,Harbor 使用可组合的 Docker Compose 配置文件和环境变量。您可以启用或禁用单个组件、配置端口、设置资源限制,并通过配置使用不同的模型后端。
Harbor 适合生产环境部署吗? Harbor 主要设计用于本地开发和原型设计。对于生产用途,它提供了一个坚实的基础,可以通过添加安全、扩展和监控基础设施来进行调整。
延伸阅读
- Harbor GitHub 仓库 – 源代码、配置和设置指南
- Ollama 官方网站 – 用于模型服务的本地 LLM 运行时
- Open WebUI 文档 – 本地 LLM 的类 ChatGPT 界面
- ComfyUI GitHub 仓库 – 基于节点的 Stable Diffusion 工作流程工具
- Docker Compose 文档 – Harbor 所基于的编排工具
無程式碼也能輕鬆打造專業LINE官方帳號!一鍵導入模板,讓AI助你行銷加分!