#!/usr/bin/env bash # ============================================ # Posimai API — Synology server.js デプロイスクリプト # 使い方: bash deploy-server.sh # ============================================ set -e HOST="mai@100.76.7.3" SSH_KEY="$HOME/.ssh/id_ed25519" CONTAINER="posimai_api" SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" SERVER_FILE="$SCRIPT_DIR/server.js" REMOTE_TMP="/tmp/server-deploy.js" DOCKER="/usr/local/bin/docker" echo "========================================" echo " Posimai API Deploy" echo "========================================" if [ ! -f "$SERVER_FILE" ]; then echo "[ERROR] server.js が見つかりません: $SERVER_FILE" exit 1 fi echo "" echo "→ Step 1: server.js を Synology /tmp に転送..." ssh -i "$SSH_KEY" -o BatchMode=yes "$HOST" "cat > $REMOTE_TMP" < "$SERVER_FILE" echo " 転送完了" echo "" echo "→ Step 2: コンテナに適用 + 再起動..." ssh -i "$SSH_KEY" -o BatchMode=yes "$HOST" " $DOCKER cp $REMOTE_TMP $CONTAINER:/app/server.js && \ echo ' コピー完了' && \ $DOCKER restart $CONTAINER && \ echo ' 再起動完了。ログを確認中...' && \ sleep 5 && \ $DOCKER logs $CONTAINER --tail 20 " echo "" echo "========================================" echo " Deploy 完了" echo "========================================"