4-4 내 컴퓨터 실습 ⏱ 약 15분

Cloudflare 자동 배포: 올리기만 하면 사이트가 바뀌어요

GitHub와 Cloudflare를 한 번 연결해 두면, 코드를 올릴 때마다 Cloudflare가 알아서 빌드하고 배포해요. 실패해도 사이트는 안전하고, 언제든 되돌릴 수 있어요.

🎯 이번 레슨을 마치면
  • 자동 배포가 어떻게 동작하는지 단계별로 설명할 수 있다
  • Cloudflare와 GitHub 저장소를 연결하고 빌드 설정을 넣을 수 있다
  • 빌드 실패, 미리보기 배포, 되돌리기(롤백)를 활용할 수 있다

원고만 넘기면 알아서 출간되는 출판사

직접 따라가 보기

세 가지 상황 버튼을 모두 눌러 보세요. 특히 빌드 실패일 때 사이트가 어떻게 되는지 확인해 보세요.

체험자동 배포는 어떻게 동작할까? — 한 단계씩
내 컴퓨터AI 코딩 도구
GitHub코드 보관함
Cloudflare빌드·배포
내 사이트방문자가 보는 곳
1단계 · 고치고 커밋하기

"연락처 버튼을 추가해 줘. 다 되면 커밋하고 올려 줘." 내 컴퓨터에서 코드가 바뀌고, 저장 포인트(커밋)가 만들어져요.

1단계: Cloudflare와 GitHub 연결하기 (처음 한 번)

준비물은 2-5 레슨에서 GitHub에 올린 저장소와 4-3 레슨에서 만든 Cloudflare 계정이에요.

  1. Cloudflare 대시보드에서 Workers & Pages → 만들기(Create) → Pages → **Git에 연결(Connect to Git)**을 골라요.
  2. GitHub 연결 화면이 뜨면 직접 로그인하고 승인해요. 저장소 접근 범위는 모든 저장소 대신 **선택한 저장소만(Only select repositories)**으로 my-site만 고르는 게 안전해요.
  3. my-site 저장소를 선택하고 아래 빌드 설정을 넣어요.
  4. **저장 및 배포(Save and Deploy)**를 누르면 첫 빌드가 시작돼요.

빌드 설정, 무엇을 넣을까?

프로젝트 종류빌드 명령결과 폴더
HTML·CSS·JS 파일만 (Part 3의 사이트)비워 둠/ (프로젝트 맨 위) 또는 파일이 있는 폴더
Vite + React (7-1 레슨)npm run builddist
Astronpm run builddist
다른 설정넣을 값
프로덕션 브랜치main (본 사이트가 될 가지)
환경 변수Supabase 주소와 공개용 키 등 (Part 5부터). secret 키는 넣지 않아요
설정값을 모르겠다면
이 프로젝트를 GitHub와 연결해서 Cloudflare Pages로 자동 배포하려고 해.
Cloudflare 화면에 넣어야 할 빌드 명령, 결과 폴더, 필요한 환경 변수 이름을 표로 정리해 줘.
내 컴퓨터에서 빌드가 잘 되는지도 먼저 확인해 줘.

2단계: 이제부터는 이렇게만

AI 코딩 도구에게 이렇게 말해 보세요
연락처 구역에 카카오톡 오픈채팅 링크 버튼을 추가해 줘. 다 되면 커밋하고 GitHub에 올려 줘.

👉 올린 뒤 1~2분 기다렸다가 사이트를 새로고침해 보세요. Cloudflare 대시보드의 배포 목록에서 진행 상황도 볼 수 있어요.

3단계: 배포 화면 읽는 법

Cloudflare의 내 프로젝트를 열면 배포(Deployments) 목록이 있어요.

보이는 것뜻
✅ 성공 (Success)배포 완료. 사이트에 반영됐어요
⏳ 진행 중 (Building)빌드하고 있어요. 잠시 기다려요
❌ 실패 (Failed)빌드 실패. 사이트는 이전 버전 그대로예요
커밋 메시지어떤 저장 포인트로 만든 배포인지 (2-4 레슨의 커밋 메시지가 여기 보여요)
프로덕션 / 미리보기본 사이트(main) 배포인지, 다른 가지의 미리보기인지

빌드가 실패했다면

  1. 실패한 배포를 눌러 빌드 로그를 열어요.
  2. 빨간 에러 줄(보통 마지막 부분)을 복사해요.
  3. Antigravity에게 보여 줘요.
AI 코딩 도구에게 이렇게 말해 보세요
Cloudflare 자동 배포가 실패했어. 빌드 로그 마지막 부분이야:

(여기에 빌드 로그 붙여 넣기)

내 컴퓨터에서는 잘 되는데 왜 Cloudflare에서는 실패하는지 쉽게 설명하고 고쳐 줘. 고친 뒤 내 컴퓨터에서 빌드가 되는지 확인하고 다시 올려 줘.

4단계: 미리보기 배포로 먼저 확인하기

2-5 레슨에서 배운 브랜치를 쓰면, 본 사이트를 건드리지 않고 새 디자인을 실제 주소에서 확인할 수 있어요. main이 아닌 가지를 올리면 Cloudflare가 new-design.minji-site.pages.dev 같은 미리보기 주소로 따로 배포해요.

AI 코딩 도구에게 이렇게 말해 보세요
new-design 가지에서 메인 화면을 바꿔서 GitHub에 올려 줘. Cloudflare 미리보기 주소에서 확인하고, 마음에 들면 main에 합칠게.

5단계: 문제가 생기면 되돌리기 (롤백)

배포는 성공했는데 막상 열어 보니 화면이 이상하다면, 고칠 때까지 기다릴 필요 없이 이전 버전으로 바로 되돌릴 수 있어요.

  1. 배포 목록에서 마지막으로 잘 되던 배포를 찾아요.
  2. 그 배포의 메뉴(⋯)에서 **이 배포로 되돌리기(Rollback)**를 눌러요. 몇 초 만에 사이트가 예전 모습으로 돌아가요.
  3. 그동안 Antigravity와 차분히 원인을 고치고, 고친 버전을 다시 올려요.
퀴즈

자동 배포 중 빌드가 실패했어요. 방문자가 보는 사이트는 어떻게 될까요?

퀴즈

방금 배포한 버전에 큰 문제가 있어요. 가장 빠르게 사이트를 살리는 방법은?

📝 정리해 볼까요?

  • 자동 배포: GitHub의 main에 올리면(push) Cloudflare가 알아채고 → 빌드하고 → 배포해요. 보통 1~2분이면 끝나요.
  • 빌드에 실패하면 배포되지 않아서 사이트는 이전 버전 그대로예요. 빌드 로그를 AI에게 보여 주고 고치면 돼요.
  • main이 아닌 가지는 미리보기 주소로 따로 배포되고, 문제가 생기면 배포 기록에서 이전 버전으로 되돌릴(롤백) 수 있어요.

📖 새로 나온 용어

자동 배포 Continuous Deployment
GitHub에 코드를 올리면 호스팅 서비스가 알아서 빌드하고 사이트를 업데이트하는 것이에요. 비유: 원고를 넘기면 알아서 인쇄·배송되는 출판사
빌드 Build
개발용 코드를 실제 서비스에 올릴 수 있는 파일로 변환·정리하는 과정이에요. 비유: 원고를 인쇄용 책으로 만들기
브랜치 Branch
원본(main)을 건드리지 않고 따로 작업하는 가지예요. 마음에 들면 원본에 합쳐요(merge). 비유: 원본 문서의 복사본에서 수정하기
미리보기 배포 Preview Deployment
main이 아닌 브랜치를 본 사이트와 다른 별도 주소로 배포해서, 합치기 전에 실제 화면을 확인하는 것이에요. 비유: 정식 개업 전 가오픈
롤백 Rollback
문제가 생겼을 때 사이트를 이전에 잘 되던 배포 버전으로 되돌리는 것이에요. 비유: 어제 저장한 파일로 되돌리기
환경 변수 Environment Variable
비밀 키처럼 코드에 직접 적으면 안 되는 값을 따로 보관해 두는 설정값이에요. 비유: 금고에 따로 보관한 열쇠
용어 사전 전체 보기 →