首先开放两个端口,分别用于前端后端,假设前端为 3000 后端为 3001。
添加一个域名,类型为 proxy,对应前端端口。
ssh 连接 Serv00
下载前后端文件
1
2
3
|
wget https://github.com/sub-store-org/Sub-Store/releases/latest/download/sub-store.bundle.js
wget https://github.com/sub-store-org/Sub-Store-Front-End/releases/latest/download/dist.zip
unzip dist.zip;; rm dist.zip
|
接着填写对应变量
1
2
3
4
5
6
7
8
9
10
11
12
|
echo '#后端监听的端口
SUB_STORE_BACKEND_API_PORT=3001
#后端监听的HOST
SUB_STORE_BACKEND_API_HOST=""
#后端接口是否增加前缀,任意内容生效
SUB_STORE_BACKEND_PREFIX="/linuxdo"
#前端反代接口的地址
SUB_STORE_FRONTEND_BACKEND_PATH="/linuxdo"
#前端监听的端口
SUB_STORE_FRONTEND_PORT=3000
#前端文件的路径
SUB_STORE_FRONTEND_PATH="/usr/home/xxxxx/dist"' > .env
|
将上文的 Port 修改为对应的前后端端口
path 填写自己喜欢的,这是 substore 此次更新后新增的鉴权功能,以前扫端口就能扫出来。
下面运行即可
1
|
node sub-store.bundle.js
|
此时直接访问前端会出错,因为没有指定后端。
访问 https://你的域名?api=你的域名/你的path 即可正常使用
访问一次上述地址即可将后端添加至浏览器缓存,访问前端就可正常使用了。
如果需要保活,可以参考下面的脚本
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
#!/bin/sh
APP_NAME="sub-store"
SCRIPT_PATH="/usr/home/xxxxx/sub-store.bundle.js"
# 检查是否已经有进程在运行
PID=$(pgrep -f "${SCRIPT_PATH}" | grep -v $$)
if [ -z "$PID" ]; then
echo "Starting ${APP_NAME}..."
# 使用 nohup 在后台启动 Node.js 进程,直接使用 node 命令
nohup node $SCRIPT_PATH > /var/log/$APP_NAME.log 2>&1 &
echo "${APP_NAME} started with PID: $!"
else
echo "${APP_NAME} is already running with PID: $PID"
fi
|
同样记得将 xxxxx 替换为自己的用户名