chore(deploy): add same-host staging stack next to production

dev deploys to /opt/dukang-staging (819x, *-test domains); main deploys to production. Staging uses full Mock with shared WeChat app ids.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-07-31 11:37:18 +08:00
parent 8d6c0f9ac0
commit 6a23e79f4c
20 changed files with 793 additions and 119 deletions
+55
View File
@@ -0,0 +1,55 @@
/** PM2 ecosystem — 杜康好客 Staging(同机双栈,端口 81908194 */
const APP_ROOT = process.env.APP_ROOT || '/opt/dukang-staging';
module.exports = {
apps: [
{
name: 'dukang-stg-api',
cwd: `${APP_ROOT}/server/dukang-api`,
script: 'dist/main.js',
instances: 1,
exec_mode: 'fork',
env: {
NODE_ENV: 'production',
APP_ENV: 'staging',
PORT: 8190,
},
},
{
name: 'dukang-stg-h5-user',
cwd: `${APP_ROOT}/apps/mini-user`,
script: 'npx',
args: 'serve dist -l 8191 -c serve.json',
interpreter: 'none',
instances: 1,
exec_mode: 'fork',
},
{
name: 'dukang-stg-h5-shop',
cwd: `${APP_ROOT}/apps/h5-shop`,
script: 'npx',
args: 'serve -s dist -l 8192',
interpreter: 'none',
instances: 1,
exec_mode: 'fork',
},
{
name: 'dukang-stg-h5-partner',
cwd: `${APP_ROOT}/apps/h5-partner`,
script: 'npx',
args: 'serve -s dist -l 8193',
interpreter: 'none',
instances: 1,
exec_mode: 'fork',
},
{
name: 'dukang-stg-admin-web',
cwd: `${APP_ROOT}/apps/admin-web`,
script: 'npx',
args: 'serve -s dist -l 8194',
interpreter: 'none',
instances: 1,
exec_mode: 'fork',
},
],
};