适用于在 Windows 或 macOS 的 Docker Desktop 中首次启动 VOZEB PRO。本文依据官方仓库 main分支与v0.0.7发布镜像编写。
postgres、app 和 generation-worker 三个服务。Start-VOZEB-PRO.cmd、Stop-VOZEB-PRO.cmd 或 start-vozeb.ps1 时使用。.env.example
docker-compose.yml
Dockerfile
web
docsStart-VOZEB-PRO.cmd
Stop-VOZEB-PRO.cmd
start-vozeb.ps1官方公开仓库不包含这三个 Windows 脚本,也不默认生成 deployment/admin-credentials.txt。首次管理员账号通过/install安装向导创建。
.envgit clone https://github.com/csyqlz/VOZEB-PRO.git
Set-Location .\VOZEB-PRO
Copy-Item .env.example .env.env,至少 填写以下内容:NEXT_PUBLIC_SITE_URL=http://localhost:3000
POSTGRES_PASSWORD=<强数据库密码>
VOZEB_PRO_ENCRYPTION_KEY=<64位十六进制密钥>
VOZEB_PRO_INSTALL_TOKEN=<至少32位的一次性安装令牌>
VOZEB_PRO_MAINTENANCE_TOKEN=<至少32位维护令牌>
VOZEB_PRO_WORKER_TOKEN=<至少32位且不同于维护令牌的Worker令牌>openssl rand -hex 32VOZEB_PRO_ENCRYPTION_KEY 初始化后必须保持稳定,不要随意更换。VOZEB_PRO_INSTALL_TOKEN 用于初始化数据库和创建首个管理员。VOZEB_PRO_WORKER_TOKEN 必须与 VOZEB_PRO_MAINTENANCE_TOKEN 不同。.env 上传、发送或截图公开。docker compose pull
docker compose up -d
docker compose psvozeb-pro
vozeb-pro-postgres
vozeb-pro-generation-workervozeb-pro Up / healthy
vozeb-pro-postgres Up / healthy
vozeb-pro-generation-worker Updocker ps --filter "name=vozeb-pro"vozeb-pro;标准 Docker Compose 部署还应显示 PostgreSQL 与生成 Worker。如果 Docker Desktop 中只看到 vozeb-pro,请先执行docker compose ps核对全部服务,而不是根据单个容器判断部署完整。
http://localhost:3000/install.env 中的一次性安装令牌。/api/health/ready 返回 503 属于正常状态;完成数据库初始化和管理员创建后,再检查它是否返回 200。Invoke-WebRequest http://127.0.0.1:3000/api/health/live200Invoke-WebRequest http://127.0.0.1:3000/api/health/ready200/api/health/ready 会检查数据库、安装状态和生成 Worker 心跳。若返回 503,请查看响应体和容器日志。http://localhost:3000http://127.0.0.1:3000http://,不要强行改成 https://。Start-VOZEB-PRO.cmd。docker compose ps 核对服务状态。Set-Location '<项目目录>'
.\start-vozeb.ps1deployment 子目录保存 Compose 文件,则需要进入该目录:Set-Location '<项目目录>\deployment'
docker compose up -d自定义脚本和 admin-credentials.txt属于发行包附加能力,不是官方仓库的通用启动步骤。
docker compose down不要执行 docker compose down -v,除非你确认要删除数据库和媒体数据。
Stop-VOZEB-PRO.cmddocker compose up -d.env 后,至少重新创建受影响的服务。例如只修改主应用配置时:docker compose up -d --force-recreate appdocker compose psdocker compose logs --tail 100 appdocker compose logs -f appdocker compose logs --tail 100 postgresdocker compose logs --tail 100 generation-workerdocker compose exec postgres pg_isready -U vozeb_pro -d vozeb_prodocker compose ps,确认 vozeb-pro 处于运行状态。docker compose logs --tail 100 app。.env 是否存在必填变量缺失。.env 中的 VOZEB_PRO_INSTALL_TOKEN 完成 /install 向导。/install 尚未完成时属于正常。docker compose logs --tail 100 app 和 docker compose logs --tail 100 generation-worker 查看原因。/install 创建,不要猜测密码。deployment/admin-credentials.txt,可以查看其中的用户名和密码。官方仓库标准流程不生成该文件。NEXT_PUBLIC_SITE_URL