Choorai
| 문서

60분 완주 챌린지

Step 5/6

67%
사전 준비
프론트엔드
백엔드
연결
5
배포
6
완료
10분

배포: Cloudflare Pages

드디어 마지막 단계입니다! 만든 서비스를 인터넷에 공개하고 친구들에게 자랑할 URL을 받아봅시다.

TL;DR (3줄 요약)

  • GitHub에 코드 push
  • Cloudflare Pages에서 저장소 연결
  • 자동 배포 완료! URL 공유

1 GitHub에 코드 올리기

먼저 프론트엔드 코드를 GitHub에 올립니다.

1.1 GitHub 저장소 생성

  1. github.com/new로 이동
  2. Repository name: my-admin 입력
  3. Public 선택 (무료 호스팅 위해)
  4. "Create repository" 클릭

1.2 코드 Push

프론트엔드 폴더(my-admin)에서 실행:

터미널
# Git 초기화
git init

# .gitignore 확인 (node_modules 제외되어야 함)
cat .gitignore

# 모든 파일 추가
git add .

# 첫 커밋
git commit -m "Initial commit"

# GitHub 연결 (YOUR_USERNAME을 본인 계정으로 변경)
git remote add origin https://github.com/YOUR_USERNAME/my-admin.git

# Push
git branch -M main
git push -u origin main

Git이 처음이라면?

위 명령어를 그대로 복사해서 실행하면 됩니다. YOUR_USERNAME 부분만 본인의 GitHub 사용자명으로 바꾸세요.

2 Cloudflare Pages 배포

Cloudflare Pages는 무료로 정적 사이트를 호스팅해줍니다.

2.1 Cloudflare 대시보드

  1. dash.cloudflare.com 로그인
  2. 좌측 메뉴에서 "Workers & Pages" 클릭
  3. "Create" 버튼 클릭
  4. "Pages" 탭 선택
  5. "Connect to Git" 클릭

2.2 GitHub 연결

  1. "Add account" → GitHub 계정 연결
  2. 방금 만든 my-admin 저장소 선택
  3. "Begin setup" 클릭

2.3 빌드 설정

Project name
my-admin
Production branch
main
Framework preset
Vite
Build command
npm run build
Build output directory
dist

2.4 환경변수 설정

"Environment variables" 섹션에서 API URL을 설정합니다. 지금은 로컬 백엔드를 사용하므로 일단 비워둡니다.

백엔드 배포 후

백엔드를 Cloud Run 등에 배포한 후, VITE_API_URL 환경변수를 백엔드 URL로 설정하면 됩니다.

"Save and Deploy" 버튼을 클릭하면 빌드가 시작됩니다.

3 배포 확인

빌드가 완료되면 URL이 생성됩니다:

Your site is live at

https://my-admin.pages.dev

(실제 URL은 다를 수 있습니다)

배포 성공!

이제 이 URL을 친구들에게 공유할 수 있습니다!

4 백엔드 배포 (다음 단계)

현재 프론트엔드만 배포된 상태입니다. 백엔드는 아직 로컬(localhost:8000)에서만 동작합니다.

백엔드 배포 옵션

백엔드를 배포하려면 다음 중 하나를 선택하세요:

  • Google Cloud Run - 무료 티어 제공, 자동 스케일링
  • Railway - 간편한 배포, 월 $5부터
  • Render - 무료 티어 제공, 느린 콜드 스타트

자세한 가이드는 Cloud Run 배포 가이드를 참고하세요.

지금은 로컬에서 백엔드를 실행하면서 프론트엔드 배포를 테스트해보세요. 백엔드 배포는 다음 학습 사이클에서 다룹니다.

새로고침 시 404 에러?

React Router를 사용하면 새로고침 시 404가 발생할 수 있습니다.

public/_redirects 파일을 만들고 아래 내용을 추가하세요:

자세한 해결 방법은 SPA 404 트러블슈팅을 참고하세요.

배포 완료 체크리스트

0/4 완료