| 1234567891011121314151617181920212223242526272829303132333435 |
- #!/bin/bash
- # ===== 설정 =====
- KEY="./1.key"
- USER="ubuntu"
- HOST="129.154.58.6"
- REMOTE_DIR="/var/www/bandosj.com/public_html"
- ARCHIVE_NAME="dist.tar.gz"
- echo "🔧 빌드 중..."
- npm install
- npm run build || { echo "❌ 빌드 실패"; exit 1; }
- # ===== 압축 =====
- echo "📦 dist 디렉토리 압축 중..."
- COPYFILE_DISABLE=1 tar -czf "$ARCHIVE_NAME" -C dist .
- # ===== 파일 전송 =====
- echo "🚀 압축 파일 전송 중..."
- scp -i "$KEY" "$ARCHIVE_NAME" "$USER@$HOST:/tmp/$ARCHIVE_NAME" || { echo "❌ 파일 전송 실패"; exit 1; }
- # ===== 원격 서버에서 압축 해제 및 배치 =====
- echo "🔧 서버에서 배포 진행..."
- ssh -i "$KEY" "$USER@$HOST" << EOF
- sudo mkdir -p "$REMOTE_DIR"
- sudo rm -rf "$REMOTE_DIR"/*
- sudo tar -xzf /tmp/$ARCHIVE_NAME -C "$REMOTE_DIR"
- sudo rm /tmp/$ARCHIVE_NAME
- EOF
- # ===== 로컬 정리 =====
- rm "$ARCHIVE_NAME"
- # ===== 완료 =====
- echo "✅ 배포 완료! http://bandosj.com 에서 확인해보세요."
|