update at 2026-04-21 17:55:41
This commit is contained in:
39
server/deploy.sh
Normal file
39
server/deploy.sh
Normal file
@@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
REMOTE="gavin@biboer.cn"
|
||||
PORT="21174"
|
||||
REMOTE_DIR="/home/gavin/note2any-wx-server"
|
||||
STAMP="$(date +%Y%m%d-%H%M%S)"
|
||||
|
||||
npm run build:server
|
||||
|
||||
ssh -p "$PORT" "$REMOTE" bash -s <<EOF
|
||||
set -euo pipefail
|
||||
mkdir -p "$REMOTE_DIR/backups/$STAMP"
|
||||
cp -f "$REMOTE_DIR/app.js" "$REMOTE_DIR/backups/$STAMP/app.js.bak" 2>/dev/null || true
|
||||
cp -f "$REMOTE_DIR/package.json" "$REMOTE_DIR/backups/$STAMP/package.json.bak" 2>/dev/null || true
|
||||
cp -f "$REMOTE_DIR/ecosystem.config.js" "$REMOTE_DIR/backups/$STAMP/ecosystem.config.js.bak" 2>/dev/null || true
|
||||
EOF
|
||||
|
||||
scp -P "$PORT" -r \
|
||||
"server/dist" \
|
||||
"server/package.json" \
|
||||
"server/README.md" \
|
||||
"$REMOTE:$REMOTE_DIR/"
|
||||
|
||||
ssh -p "$PORT" "$REMOTE" bash -s <<EOF
|
||||
set -euo pipefail
|
||||
cat > "$REMOTE_DIR/app.js" <<'APP'
|
||||
require("./dist/index.js");
|
||||
APP
|
||||
pkill -f "node $REMOTE_DIR/app.js" 2>/dev/null || true
|
||||
pkill -f "node $REMOTE_DIR/dist/index.js" 2>/dev/null || true
|
||||
cd "$REMOTE_DIR"
|
||||
set -a
|
||||
[ -f ./.env ] && . ./.env
|
||||
set +a
|
||||
nohup node app.js > server.log 2>&1 &
|
||||
sleep 1
|
||||
ps -ef | grep -E "node .*note2any-wx-server/(app|dist/index)\\.js" | grep -v grep
|
||||
EOF
|
||||
Reference in New Issue
Block a user