목차(클릭하세요)
먼저 깃허브에 올린 후, 상황에 따라 배포 방법을 결정!!
1. 웹 프로젝트 유형별 권장 배포 플랫폼 정리
웹 프로젝트 유형별 권장 배포 플랫폼 정리 (2025 기준)
정리표: 프로젝트별 최적 배포 플랫폼
번호 | 프로젝트 종류 | 권장 배포 플랫폼 | 설명 |
1 | HTML/CSS/JS만 포함된 정적 웹사이트 | 단순 포트폴리오, 정적 웹페이지 전용 | |
2 | HTML/JS 기반이고, 외부 API를 호출하거나 클라이언트에서 동작하는 동적 기능 포함 | 1. 서버(API) 요청이 포함되면 Render 필요
2. JS가 클라이언트 단에서만 동작하고, 서버 요청이 없다면 GitHub Pages 도 가능함 | |
3 | Flask (Python 웹서버 기반 앱) | -Flask는 서버 실행이 필요하므로 GitHub Pages에서는 불가
-Render는 WSGI 기반 Python 앱 배포에 적합 | |
4 | Streamlit 앱 (데이터 시각화, 대화형 앱) | -Streamlit은 자체 서버가 필요한 앱이므로 정적 호스팅은 불가
- 개인/데모 목적 → Streamlit Cloud
- 확장성/기타 용도 → Render |
보충 설명
GitHub Pages
•
HTML/CSS/JS 기반 정적 사이트에 가장 적합
•
외부 API를 fetch()로 호출하는 정도의 동작은 문제 없음
◦
◦
백엔드 서버나 DB 없이, JS가 외부에 요청만 보내는 구조일 때
◦
•
Python, PHP, Flask 등의 서버 사이드 실행은 불가
Render
•
Flask, FastAPI, Streamlit 등 서버 실행이 필요한 Python 앱 배포에 적합
•
무료 플랜도 존재하지만 15분 사용 시 슬립 발생
•
GitHub 연동 자동 배포 가능 (git push → 자동 반영)
Streamlit Cloud
•
Streamlit 공식 호스팅 플랫폼
•
간단한 데이터 앱, 대화형 대시보드, 머신러닝 데모 등에 최적
•
GitHub 저장소 연동으로 자동 배포 가능
•
단, 공개 레포만 지원
2. GitHub 연동 자동 배포
GitHub 연동 자동 배포란?
모든 플랫폼은 GitHub와 연동 시
git push만 해도 자동으로 최신 코드로 앱이 새로 배포됨
예시 플랫폼별 자동 배포 지원
•
GitHub Pages → 정적 파일 자동 반영
•
Render → 서버 앱 자동 재빌드 후 배포
•
Streamlit Cloud → 앱 자동 재실행
3. 최종 요약
상황별 정리
정적 웹: GitHub Pages,
JS가 서버 API 호출할경우: Render,
파이썬 Flask: Render,
파이썬 Streamlit: Streamlit Cloud 또는 Render가 최적