跳到主要内容

快速上手

部署方式对比

方式适用场景优点缺点
Docker本地体验、小规模测试零依赖、5 分钟上线不支持高可用,资源有限
Helm(推荐)生产级 Kubernetes 部署自动管理 MySQL/Redis,支持完整功能需要 K8s 集群
二进制自定义部署、已有基础设施最灵活需手动维护依赖

如果您只是想快速体验平台功能,选择 Docker;如果需要承办正式比赛,推荐使用 Helm 部署在 Kubernetes 集群上。


Docker 快速部署

详细说明见 Docker 部署,以下为极简流程:

# 1. 准备 docker-compose.yaml 和 config.yaml(见 Docker 部署文档)
# 2. 复制 K8s kubeconfig(如使用容器题功能)
cp ~/.kube/config ./admin.yaml
# 3. 启动服务
docker compose up -d
# 4. 查看初始管理员密码
docker compose logs cbctf | grep "Init Admin"
# 5. 浏览器访问
# http://localhost:8000/platform/#/login

Helm 快速部署

详细说明见 Helm 部署,以下为极简流程:

# 1. 添加 Chart 仓库
helm repo add 0rays https://0rays.github.io/CBCTF-charts
helm repo update
# 2. 安装(最小配置)
helm install cbctf 0rays/cbctf \
--set cbctf.host=https://your.domain.com \
--set ingress.enabled=true \
--set ingress.hosts[0].host=your.domain.com
# 3. 查看初始管理员密码
kubectl logs deployment/cbctf | grep "Init Admin"

初始登录

所有部署方式在首次启动时,若数据库中没有管理员账号,平台会自动创建并将凭据打印到日志:

Init Admin: Admin{ name: admin, password: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, email: admin@0rays.club}
  • Dockerdocker compose logs cbctf | grep "Init Admin"
  • Helmkubectl logs deployment/cbctf | grep "Init Admin"
  • 二进制:查看终端输出或 ./logs/ 目录下的日志文件

登录地址:https://your.domain/platform/#/login

注意

首次登录后请立即修改初始密码,并检查 gin.jwt.secret 配置。