零基础通关:keep完全离线部署指南 — 本地化环境安装与配置全流程
你是否在无网络环境下部署开源工具时屡屡碰壁?本文将带你一步步完成keep平台的本地化部署,无需依赖外部网络,从镜像构建到服务验证全程实操,让你在隔离环境中也能轻松搭建企业级告警管理系统。读完本文你将掌握:离线环境准备清单、Docker镜像本地化构建、配置文件深度优化、服务启动与状态验证、常见问题排查方案。
环境准备与文件清单
在开始部署前,需确保目标服务器满足以下条件:已安装Docker 20.10+和Docker Compose v2+,至少2GB内存和10GB磁盘空间。从项目仓库获取完整源码后,重点关注以下部署相关文件:
- 核心配置文件:docker-compose.yml、docker-compose.common.yml
- 构建脚本:start.sh(位于项目根目录)
- Dockerfile:docker/Dockerfile.api(后端API)、docker/Dockerfile.ui(前端界面)
- 持久化存储:需提前创建
./state目录用于数据持久化
本地化镜像构建流程
1. 后端API镜像构建
使用项目内置的Dockerfile在本地构建后端服务镜像,避免从外部仓库拉取:
docker build -f docker/Dockerfile.api -t keep-api:local .
该过程会基于Python环境构建FastAPI服务,包含所有依赖安装与配置打包。构建完成后可通过docker images | grep keep-api验证镜像是否存在。
2. 前端UI镜像构建
同样使用本地文件构建Next.js前端镜像:
docker build -f docker/Dockerfile.ui -t keep-ui:local .
构建完成后,需修改docker-compose.yml中的镜像引用,将原远程镜像地址替换为本地镜像:
services:
keep-frontend:
image: keep-ui:local # 替换为本地构建镜像
# 其他配置保持不变
keep-backend:
image: keep-api:local # 替换为本地构建镜像
# 其他配置保持不变
图1:后端服务容器配置示例(来源于项目部署文档)
离线配置优化
1. 网络隔离调整
在离线环境下需禁用所有外部网络请求,修改docker-compose.yml添加网络隔离配置:
services:
keep-backend:
# 原有配置...
networks:
- isolated_network
keep-frontend:
# 原有配置...
networks:
- isolated_network
networks:
isolated_network:
driver: bridge
internal: true # 启用网络隔离
2. 认证模式配置
默认配置使用NO_AUTH模式,适合离线环境快速部署。如需启用认证,可修改环境变量:
services:
keep-backend:
environment:
- AUTH_TYPE=LOCAL # 本地认证模式
- LOCAL_USERS=admin:password123 # 配置管理员账户
图2:认证服务配置界面示意图
服务启动与状态验证
1. 启动服务集群
使用修改后的docker-compose配置启动所有服务:
docker compose up -d
首次启动需初始化数据库,可通过查看日志确认启动状态:
docker compose logs -f keep-backend
当出现Application startup complete日志时,表示服务已成功启动。
2. 功能验证步骤
- 前端访问:通过服务器IP:80(默认端口)访问UI界面,使用配置的本地账户登录
- API健康检查:执行
curl http://localhost:8080/api/health,返回{"status":"healthy"}表示后端正常 - 数据持久化测试:在UI中创建测试告警规则,重启服务后检查数据是否保留在
./state目录
图3:前端服务容器部署架构示意图
常见问题解决方案
1. 权限问题处理
若出现state目录权限错误,可执行项目提供的权限修复脚本:
chmod +x start.sh
./start.sh # 脚本会自动修复目录权限
2. 镜像构建失败
- 依赖问题:检查
pyproject.toml中的Python依赖是否完整 - 网络限制:确保构建环境能访问基础镜像仓库(可提前导入基础镜像)
3. 服务启动超时
修改docker-compose.yml增加启动超时配置:
services:
keep-backend:
restart: on-failure:3 # 最多重试3次
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/api/health"]
interval: 30s
timeout: 10s
retries: 3
部署后配置建议
1. 维护窗口设置
通过UI创建定期维护窗口,避免服务运行中自动更新:
图4:维护窗口创建界面
2. 监控集成方案
如需在隔离环境中添加监控,可启用内置Prometheus服务(需在docker-compose中启用grafana profile):
docker compose --profile grafana up -d
访问http://localhost:3001可打开Grafana监控面板,默认账户admin/admin。
总结与后续优化
通过本文步骤,你已成功在离线环境部署keep平台核心服务。后续可关注:
- 配置备份:定期备份
./state目录和docker-compose.yml配置 - 镜像管理:使用
docker save导出构建好的镜像用于多服务器部署 - 安全加固:参考docs/deployment/authentication文档配置高级认证
如需进一步功能扩展,可查阅项目官方部署文档docs/deployment/docker.mdx获取更多配置示例。
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00- QQwen3-Coder-Next2026年2月4日,正式发布的Qwen3-Coder-Next,一款专为编码智能体和本地开发场景设计的开源语言模型。Python00
xw-cli实现国产算力大模型零门槛部署,一键跑通 Qwen、GLM-4.7、Minimax-2.1、DeepSeek-OCR 等模型Go06
PaddleOCR-VL-1.5PaddleOCR-VL-1.5 是 PaddleOCR-VL 的新一代进阶模型,在 OmniDocBench v1.5 上实现了 94.5% 的全新 state-of-the-art 准确率。 为了严格评估模型在真实物理畸变下的鲁棒性——包括扫描伪影、倾斜、扭曲、屏幕拍摄和光照变化——我们提出了 Real5-OmniDocBench 基准测试集。实验结果表明,该增强模型在新构建的基准测试集上达到了 SOTA 性能。此外,我们通过整合印章识别和文本检测识别(text spotting)任务扩展了模型的能力,同时保持 0.9B 的超紧凑 VLM 规模,具备高效率特性。Python00
KuiklyUI基于KMP技术的高性能、全平台开发框架,具备统一代码库、极致易用性和动态灵活性。 Provide a high-performance, full-platform development framework with unified codebase, ultimate ease of use, and dynamic flexibility. 注意:本仓库为Github仓库镜像,PR或Issue请移步至Github发起,感谢支持!Kotlin08
VLOOKVLOOK™ 是优雅好用的 Typora/Markdown 主题包和增强插件。 VLOOK™ is an elegant and practical THEME PACKAGE × ENHANCEMENT PLUGIN for Typora/Markdown.Less00



