跳转到内容
ReplenOps / 使用手册

部署指南

准备一个独立的 ReplenOps 业务环境。官网本身不连接业务数据库。

适用:部署维护人员

场景 建议方式
阅读源码、开发与本地验证 Node.js 与 PostgreSQL
独立主机上的隔离体验环境 项目提供的 Docker Compose
正式团队使用 经过验证的容器发布、TLS、独立凭据与备份方案

下文是业务应用 ReplenOps的部署方式,不是本站 Astro 项目的构建命令。

准备满足业务仓库要求的 Node.js(至少 20)、npm(至少 9)和 PostgreSQL 17。具体运行版本同时受依赖约束影响,安装前核对所选发布版本的 package.json

终端窗口
git clone https://github.com/iiwish/ReplenOps.git
cd ReplenOps
npm ci
cp .env.example .env

编辑 .env,连接事先准备好的项目数据库,并设置随机 JWT 密钥和强初始密码。数据库账号只授予本项目所需权限。完成配置后运行:

终端窗口
npm run db:prepare
npm run dev

在本机打开 http://localhost:3000db:prepare 会部署迁移、写入幂等基础数据,并在初始管理员不存在时创建账号。

项目 Compose 定义包含应用、迁移任务和 PostgreSQL 容器,适合独立的隔离环境。先检查目标主机是否已有统一管理的数据库,不要在共享基础设施上直接套用整套定义。

在业务仓库根目录复制并编辑环境文件,替换 POSTGRES_PASSWORDJWT_SECRETADMIN_INITIAL_PASSWORD 等占位值,然后执行:

终端窗口
docker compose --env-file .env -f deploy/compose.yml up --build -d
docker compose --env-file .env -f deploy/compose.yml ps

Compose 中的数据库连接由其定义中的 POSTGRES_PASSWORD 等变量组装;不要假设修改 .envDATABASE_URL 就会覆盖 Compose 内写明的连接配置。接入既有数据库时,需要单独审查部署定义。

  • 应用默认绑定本机回环地址,由带 TLS 的反向代理提供外部访问。
  • 业务数据库、管理员密码和 JWT 密钥均使用独立值,不沿用示例。
  • 已执行数据库迁移,而不是使用 prisma db push
  • 初始账号可以登录,角色与门店关联正确。
  • 已配置商品、仓库、门店、库存与报货时间。
  • 已验证第一笔订货全流程。
  • 数据库备份与恢复已经演练,日志不暴露敏感信息。

公开演示环境只使用虚构数据,并向体验者说明数据可能被重置。内部测试环境应限制访问,不能仅靠不公开网址保护。

官网的在线体验入口仅在演示地址确定后启用。演示和正式业务环境必须隔离账号、密钥、数据库及数据;官网不持有业务登录会话。

下一步:环境变量 · 升级、备份与排障

内容核对于 2026-09-10 · 反馈文档问题

ReplenOps · 演示界面