GitHub - soheejjang0912/excuse-me

βœ… 전체 흐름

  1. EC2 μΈμŠ€ν„΄μŠ€ μ€€λΉ„
  2. μ„œλ²„ ν™˜κ²½ μ„ΈνŒ… (Node.js / npm / PM2)
  3. ν”„λ‘œμ νŠΈ 배포 & μ‹€ν–‰
  4. Nginx λ¦¬λ²„μŠ€ ν”„λ‘μ‹œ μ„€μ •
  5. Elastic IP μ—°κ²°
  6. 도메인 μ—°κ²° (κ°€λΉ„μ•„)
  7. SSL μΈμ¦μ„œ 적용 (Certbot)
  8. GitHub Actions μžλ™ 배포 (CI/CD)

πŸ“‹ 배포 체크리슀트

단계 μž‘μ—… λͺ…λ Ήμ–΄ / λ‚΄μš© μƒνƒœ
0 EC2 μΈμŠ€ν„΄μŠ€ 생성 Ubuntu 22.04 / λ³΄μ•ˆ κ·Έλ£Ή(22, 80, 443 μ—΄κΈ°) βœ…
1 SSH 접속 ssh -i excuse-me-key.pem ubuntu@<EC2_IP> βœ…
2 κΈ°λ³Έ μ„ΈνŒ… sudo apt update && sudo apt upgrade -ysudo apt install -y build-essential curl βœ…
3 Node.js 확인 node -v (v20.x)npm -v (10.x) βœ…
4 ν”„λ‘œμ νŠΈ κ°€μ Έμ˜€κΈ° git clone <https://github.com/soheejjang0912/excuse-me.git> βœ…
5 ν™˜κ²½λ³€μˆ˜ μ„€μ • .env β†’ NEXT_PUBLIC_SUPABASE_URL, NEXT_PUBLIC_SUPABASE_ANON_KEY βœ…
6 λΉŒλ“œ & μ‹€ν–‰ npm ci && npm run buildpm2 start npm --name "excuse-me" -- start βœ…
7 Nginx μ„€μΉ˜ & μ„€μ • /etc/nginx/sites-available/excuse-me μž‘μ„± ν›„ 링크 βœ…
8 Elastic IP μ—°κ²° EC2에 κ³ μ • IP μ—°κ²° βœ…
9 도메인 μ—°κ²° excuseme.cloud β†’ A λ ˆμ½”λ“œ βœ…
10 SSL μΈμ¦μ„œ λ°œκΈ‰ sudo certbot --nginx -d excuseme.cloud -d www.excuseme.cloud βœ…
11 GitHub Actions μžλ™ 배포 .github/workflows/deploy.yml μž‘μ„± βœ…

1️⃣ EC2 μ„œλ²„ μ€€λΉ„

ssh -i excuse-me-key.pem ubuntu@<EC2_IP>