이 문서에서 다루는 내용
현재 지원 범위
- 앱 유형
- Static HTML
- 권장 구성
- 저장소 루트 또는 지정 폴더의 index.html
- 확인할 점
- 별도 빌드가 필요하면 Node 기반 구성을 사용하세요.
- 앱 유형
- Vite / React SPA
- 권장 구성
- build 결과물 dist
- 확인할 점
- 브라우저 공개 변수는 빌드 시 번들에 포함됩니다.
- 앱 유형
- Next.js
- 권장 구성
- package.json의 build와 start 스크립트
- 확인할 점
- 지원되는 보안 패치 버전과 lockfile을 함께 사용하세요.
- 앱 유형
- Node API
- 권장 구성
- Express 또는 Fastify HTTP 서버
- 확인할 점
- PORT와 0.0.0.0 바인딩이 필요합니다.
- 앱 유형
- Flask
- 권장 구성
- gunicorn 실행 명령
- 확인할 점
- 앱 모듈 경로와 PORT를 확인하세요.
- 앱 유형
- FastAPI
- 권장 구성
- uvicorn 실행 명령
- 확인할 점
- --host 0.0.0.0과 PORT를 사용하세요.
- 앱 유형
- Django
- 권장 구성
- gunicorn 실행, static과 migration 전략
- 확인할 점
- ALLOWED_HOSTS와 DB 연결을 앱에서 설정하세요.
| 앱 유형 | 권장 구성 | 확인할 점 |
|---|---|---|
| Static HTML | 저장소 루트 또는 지정 폴더의 index.html | 별도 빌드가 필요하면 Node 기반 구성을 사용하세요. |
| Vite / React SPA | build 결과물 dist | 브라우저 공개 변수는 빌드 시 번들에 포함됩니다. |
| Next.js | package.json의 build와 start 스크립트 | 지원되는 보안 패치 버전과 lockfile을 함께 사용하세요. |
| Node API | Express 또는 Fastify HTTP 서버 | PORT와 0.0.0.0 바인딩이 필요합니다. |
| Flask | gunicorn 실행 명령 | 앱 모듈 경로와 PORT를 확인하세요. |
| FastAPI | uvicorn 실행 명령 | --host 0.0.0.0과 PORT를 사용하세요. |
| Django | gunicorn 실행, static과 migration 전략 | ALLOWED_HOSTS와 DB 연결을 앱에서 설정하세요. |
모든 서버 앱의 실행 계약
- 플랫폼이 제공하는
PORT에서 요청을 받아야 합니다. - 컨테이너 안에서는 127.0.0.1이 아니라 0.0.0.0에 바인딩합니다.
- 앱 시작 명령은 서버를 계속 실행하는 foreground 프로세스여야 합니다.
- 모노레포는 Root Directory를 실제 앱 폴더로 지정합니다.
- 데이터베이스 migration은 자동 실행되지 않습니다. 앱의 배포 전략에 맞게 별도로 관리합니다.
Python 시작 명령 예시
Flask · bash
gunicorn app:app --bind 0.0.0.0:$PORTFastAPI · bash
uvicorn app:app --host 0.0.0.0 --port $PORT현재 공식 지원 밖의 구성
배포 전 상담이 필요한 앱
background worker만 실행하는 서비스, 여러 프로세스를 함께 실행하는 구성, 장기 연결에 의존하는 앱, Dockerfile 우선 배포, 프레임워크별 고급 캐시·migration 자동화는 아직 일반 지원 경로로 약속하지 않습니다. Spring Boot, SvelteKit, Nuxt도 실제 앱 검증 후 지원 범위가 확대됩니다.