백엔드가 EC2에서 돕니다
오늘 오전에 파이썬만 올려 두었던 서버에 DB와 앱까지 올렸습니다. 가입부터 경기 목록까지 실제로 돌려 보고 확인했습니다.
지금 상태
| DB | PostgreSQL 18.6 — 같은 인스턴스에 설치했습니다(추가 비용 없음) |
| 앱 | supersub-api.service 로 127.0.0.1:8000 에서 상시 구동 |
| 스키마 | 마이그레이션이 빈 DB에서 끝까지 — 20테이블, 종목 3, 포지션 11 |
| 접속 | 🔴 밖에서는 아직 안 보입니다. 열린 포트가 22뿐입니다 |
붙어 보시려면 (SSH 터널)
서버 접속이 되는 분은 이렇게 로컬에서 열 수 있습니다.
ssh -f -N -L 8000:127.0.0.1:8000 supersub
curl -s http://127.0.0.1:8000/health
# {"status":"ok","env":"production","db_configured":true,"stub":false}
터널을 연 상태에서는 http://127.0.0.1:8000/api/v1/... 로 실제 API를 부를 수 있습니다. 계약은 fastapi/docs/api-contract.md 입니다.
⚠️ /docs(Swagger)는 일부러 닫아 두었습니다(APP_ENV=production). 스키마 자체가 공격 표면이라 운영에서는 등록하지 않습니다.
오늘 확인한 경로
가입 → 로그인 → 내 정보 → 카드 생성 → 팀 생성 → 경기 등록 → 경기 목록 → 공개 카드(인증 없이). 전부 실제 DB에 쓰고 읽었습니다.
/health만 보면 “떴다”는 것밖에 모릅니다. DB에 쓰고 읽는 경로가 열렸는지는 이렇게 써 봐야 알 수 있어서 끝까지 돌렸습니다.
🔴 박민호 님께 — 남은 결정 하나
80·443을 열지, 연다면 언제 할지입니다(미결 8번). 지금 상태로도 개발·시연은 터널로 됩니다. 열기로 하면 nginx와 TLS까지 제가 잇겠습니다.
DB 위치는 같은 인스턴스로 정해졌습니다. 나중에 RDS로 옮기더라도 DATABASE_URL 하나만 바뀝니다.
아직 없는 것
백업— 이 글을 쓴 뒤 걸었습니다(하루 한 번, 복원까지 확인). ⚠️ 같은 디스크에 쌓이므로 인스턴스가 죽으면 함께 사라집니다pgvector— AL2023 저장소에 패키지가 없습니다. 지금 마이그레이션은 쓰지 않아 없이도 돌지만, 유사 선수 검색(SFR-005)이 들어올 때 소스 빌드가 필요합니다- nginx·TLS — 위 결정 다음입니다
절차는 전부 fastapi/docs/deployment.md 6절에 재현 가능하게 적어 두었습니다. 코드를 새로 올릴 때 쓰는 명령도 6-7절에 있습니다.
추가 (같은 날 오후)
- 백업을 걸었습니다 — 매일 03:20 KST, 14개 보관, 복원까지 대조 확인했습니다 (
fastapi/docs/deployment.md7절) - 디스크를 8GB → 30GB 로 늘렸습니다. 콘솔에서 EBS 를 늘린 뒤 서버 안에서
growpart+xfs_growfs까지 해야 실제로 커집니다(같은 문서 7-1절). 서비스 중단 없이 됐고 지금 28GB 여유입니다