Skip to content

部署与快速开始

本页面向自托管系统维护者。使用官方服务的运营管理员请直接看自助开墙流程

Campux 可以作为一个完整 Web 应用运行,也可以在开发环境中拆成前端、后端和基础设施分别启动。

一键自托管

仓库提供了面向演示和小规模自托管的 docker-compose.yaml

bash
cp .env.example .env
docker compose up -d

默认会启动:

服务默认地址说明
Campuxhttp://localhost:8989Web、API、OneBot WebSocket 同一个进程
PostgreSQLlocalhost:5432业务数据库
MinIO APIhttp://localhost:9000图片和渲染图对象存储
MinIO Consolehttp://localhost:9001对象存储管理界面

生产环境请至少修改:

ini
DATABASE_URL="postgresql://..."
CAMPUX_WEB_ORIGIN="https://your-domain.example"
CAMPUX_BOT_SESSION_SECRET="replace-with-a-long-random-secret"
S3_ENDPOINT="https://s3.example"
S3_BUCKET="campux"
S3_ACCESS_KEY_ID="..."
S3_SECRET_ACCESS_KEY="..."
S3_PUBLIC_BASE_URL="https://cdn.example/campux"

开发模式

开发时可以使用本仓库的基础设施 compose:

bash
docker compose -f docker-compose.dev.yaml up -d
bun install
bun run db:generate
bun run db:migrate
bun run db:seed
bun run dev:server
bun run dev:web

开发地址:

  • 前端:http://localhost:5180
  • 后端:http://localhost:8989

默认开发账号

执行 bun run db:seed 后,本地会创建几个测试账号,密码均为 campux123

QQ 号身份用途
10000用户投稿流程验证
20000审核员审核流程验证
30000管理员租户管理验证
40000系统运维运维面板验证
50000运营管理员运营面板和范围化租户管理验证

生产环境不应使用测试账号。Campux 会在生产环境隐藏开发测试登录提示,并要求真实账号通过机器人注册或由管理员授权。

首次检查

启动后建议依次确认:

  1. /api/health 返回正常。
  2. 运维面板里的“管理端 host”已设置;官方服务通常是 app.campux.top
  3. 从管理端 host 打开登录页时,能看到面向墙号运营者的邮箱注册入口。
  4. 能登录系统运维账号进入运维面板,也能登录运营管理员账号进入运营面板。
  5. 运营管理员能创建或选择一个校园墙。
  6. 管理页可以添加机器人,并复制 OneBot 连接 URL。
  7. 发布管理页能看到发布目标和 cookies 状态。

多租户、系统运维或运营管理员账号登录后,会先看到校园墙选择页。普通单租户账号会直接进入所属校园墙。

校园墙选择页

Campux 运维面板

如果目标是让墙号运营者完全自助开墙,请继续阅读 自助开墙流程