自助主机 - 入门
本指南将带您从空服务器到运行的 Kanera,您可以登录到它。
它涵盖了每个部署所需的部分:要求、容量、环境文件、启动堆栈和确认其工作。 可选部分 — — 公共 API、MCP、电子邮件、存储和备份 — — 每个都有自己的页面,在结尾处链接。
所需经费
你需要:
- 具有 Docker 和 Docker Compose 的服务器。
- 指向服务器的域。
- HTTPS 在Kanera前面,通常通过Caddy,Traefik,nginx,或云负载均衡器。
- 如果您想让 Kanera 发送电子邮件,请输入 SMTP 凭据。
- 备份 PostgreSQL 数据和上传文件的计划。
规划能力
Kanera 适用于小型团队,其编写文件不设置硬 CPU 或内存限制,并且迁移服务在启动后退出。 默认堆栈运行 PostgreSQL、Valkey、两个 API 副本、一个工作程序、公共 API、MCP 和 nginx。
使用这些作为起点,然后衡量您自己的并发活动、文件、集成和备份窗口:
| 典型的队伍 | 起始能力 | 本地磁盘 | 笔记 |
|---|---|---|---|
| 个人或轻微使用 | 1 个 vCPU、1 GiB RAM | 10GiB | 使用 API_REPLICAS=1 并关闭可选监控配置文件。 |
| 1 至 25 名活跃用户 | 1-2 个 vCPU、2 GiB RAM | 20GiB | 适合正常的板活动、通知和轻型集成。 |
| 26 至 100 名活跃用户 | 2-4 个 vCPU、4 GiB RAM | 40GiB | 增加了并发活动、上传、API 流量、Webhook 和数据库缓存的空间。 |
| 超过100名活跃用户 | 4+ vCPU、8+ GiB RAM | 80+ GiB | 在发布前使用代表性数据进行负载测试,然后扩展 API 副本并根据观察到的使用情况调整 PostgreSQL。 |
这些是规划基线,而不是硬性用户限制或测量容量保证。 并发活动比注册帐户数量更重要,文件量和保留通常比 Kanera 本身更加驱动磁盘需求。 将数据库和上传文件备份保存在服务器主磁盘之外,并提醒磁盘增长。
可选的 Prometheus、Grafana、Loki、Alloy 和导出器监控配置文件可添加多个进程。 部署指南估计,根据日志量和仪表板使用情况,大约需要 0.7 到 1.5 GiB 的额外内存。
关于每个服务的功能以及要公开哪些服务,请参阅 服务与路由.
下载Kanera
Kanera 作为预构建的 Docker 映像交付。 每个 释放 包括一个即可运行的 docker-compose.yml 从而不需要克隆仓库或构建任何东西。
在服务器上为 Kanera 创建一个目录,并从最新版本下载编写文件和示例环境文件:
mkdir kanera && cd kanera
curl -fsSLo docker-compose.yml https://github.com/happendev/Kanera/releases/latest/download/docker-compose.yml
curl -fsSLo .env https://github.com/happendev/Kanera/releases/latest/download/env.example
编译文件将每个图像都绑定到该版本,因此在您 最新情况。它需要 Docker Compose 2.23 或更高版本(docker compose version).
配置环境文件
开放 .env 设置所需的生产值:
WEB_ORIGIN=https://kanera.example.com
COOKIE_DOMAIN=kanera.example.com
COOKIE_SECURE=true
KANERA_ENVIRONMENT=production
POSTGRES_PASSWORD=<openssl rand -hex 32>
JWT_SECRET=<openssl rand -hex 32>
MCP_INTERNAL_SECRET=<openssl rand -hex 32>
MFA_ENCRYPTION_KEY=<openssl rand -hex 32>
MEDIA_SIGNING_SECRET=<openssl rand -hex 32>
SECRETS_ENCRYPTION_KEY=<openssl rand -hex 32>
在重新部署过程中保持这些秘密的稳定性。 JWT_SECRET 注销用户。 更改 MFA_ENCRYPTION_KEY 使已注册的身份验证器和 MFA 挑战无效。 MEDIA_SIGNING_SECRET 使现有的已签名媒体 URL 无效。 MCP_INTERNAL_SECRET 将 MCP 服务身份验证到 API。 SECRETS_ENCRYPTION_KEY 保护存储的集成机密,并应与 JWT_SECRET.
自托管模式是默认值:
KANERA_DEPLOYMENT_MODE=self_hosted
除非您正在运行 Kanera SaaS 风格的托管部署,否则不要设置托管 Stripe 计费变量。
海 环境变量参考 适用于生产设置 env.full.example 对于每个可选调谐值和默认值。
起点 Kanera
docker compose up -d
Docker 会拉取映像,然后迁移服务会在此之前设置数据库一次 api, worker, 和 public-api start 。 MCP 服务在公共 API 运行状况检查通过后启动。
检查部署情况
在浏览器中打开您的 Web 域:
https://kanera.example.com
有用的检查:
docker compose ps
docker compose logs -f api
docker compose logs -f worker
docker compose logs -f public-api
docker compose logs -f mcp
健康检查:
curl https://kanera.example.com/api/health
curl https://api.kanera.example.com/health
curl https://mcp.kanera.example.com/health
只有在这些服务被暴露时,公共 API 和 MCP 检查才会适用。
如果有东西不出来,通过工作 常见问题 按顺序而不是按症状。
配置您所需的
登录和使用看板不需要以下任何内容。 您可以随时添加每个部分:
| 页面 | 封面 |
|---|---|
| 环境变量参考 | 必需的秘密、公共 URL、访问策略、存储、交付、扩展、保留、监控和管理设置。 |
| 服务与路由 | 每个服务的功能、推荐的域、发布端口和反向代理信任。 |
| 电子邮件与通知 | SMTP、浏览器推送、个人 ntfy/Gotify/webhook 目标和聊天目标。 |
| 集成与 API | 暴露公共 API 和 MCP、面向 AI 代理的 OAuth 和 Trello 附件复制。 |
| 存储与备份 | 本地或 S3 上传存储、数据库和文件备份以及值得保密的信息。 |
| 更新与扩展 | 更新到新版本和副本计数。 |
关于实施支持的部署参考,请参见 关于 Kanera 存储库中的 DEPLOY.md.
