Cloudflare Workers로 블로그 자동화 API 만드는 법, 이렇게 시작하면 됩니다

매일 아침 키워드 찾고 AI 돌리고 워드프레스에 붙여넣는 거, 손목 아프지 않으신가요? 저도 이 루틴을 반복하다가 서버 없는 자동화를 찾아보게 됐습니다. Cloudflare Workers는 서버를 따로 띄우지 않고도 JavaScript 코드 하나로 API를 돌릴 수 있는 서비스입니다.

서버 없이 JS 코드로 API 실행

Cron으로 매시간 자동 발행 가능

무료 플랜만으로도 충분히 운영 가능

Cloudflare Workers, 블로그 자동화에 왜 맞을까

AI가 만들어준 worker.js 파일 하나만 있으면 됩니다. 그걸 Cloudflare에 올리는 순간, 그 자체가 API 엔드포인트가 됩니다. 서버 관리, 배포 파이프라인, 인프라 비용 같은 걸 신경 쓸 필요가 없어요.

실무에서 보면, 개인이 운영하는 블로그 자동화 수준에서는 이 정도 규모가 딱 맞습니다. AWS Lambda나 별도 VPS를 띄우면 오히려 과합니다. 트렌드 키워드 수집, 워드프레스 발행 트리거, 알림 전송 정도의 가벼운 작업엔 Workers가 훨씬 간단합니다.

배포되면 https://trend-worker.xxx.workers.dev 같은 주소가 자동으로 생깁니다. 이 주소를 그대로 API처럼 호출하면 되는 구조입니다.

Cloudflare 대시보드에서 Workers and Pages 메뉴로 진입하는 화면
Cloudflare 대시보드에서 Workers and Pages 메뉴로 진입하는 화면

빌드 > 컴퓨트 > Workers 및 Pages 경로로 들어갈 수 있습니다.

웹 배포 vs Wrangler CLI, 뭐가 더 편할까

방법은 두 가지입니다. 웹 대시보드에서 바로 붙여넣는 방식과, VS Code에서 Wrangler로 개발하는 방식이죠. 이 부분이 핵심입니다. 처음엔 웹으로 시작해도, 결국 개발 단계에선 Wrangler로 넘어가게 됩니다.

항목웹 대시보드 배포Wrangler CLI추천 상황
난이도매우 쉬움Node 설치 필요초보자는 웹부터
배포 속도Deploy 버튼 한 번wrangler deploy 명령어둘 다 몇 초 내 완료
버전 관리수동 관리Git 연동 쉬움코드 자주 수정하면 CLI
디버깅대시보드 로그만 확인npm run dev로 로컬 테스트에러 잦으면 CLI가 유리
Secrets 설정Settings에서 직접 등록wrangler secret put 명령어둘 다 안전하게 가능

이건 직접 겪어보면 체감되는데, 웹 대시보드는 처음 감 잡기엔 좋지만 코드를 자주 고치기 시작하면 답답해집니다. npm run dev로 로컬에서 미리 확인하고 배포하는 흐름이 훨씬 마음 편하더라고요.

API Key는 절대 코드에 넣지 마세요

AI가 짜준 코드에 const API_KEY = “xxxxx” 같은 줄이 그대로 있다면 바로 지워야 합니다. 이 코드는 배포되는 순간 공개 저장소나 대시보드 화면에 노출될 위험이 있거든요.

Workers는 Settings → Variables → Secrets 메뉴에서 키를 따로 등록할 수 있습니다. 예를 들어 OPENROUTER_API_KEY를 Secrets로 등록해두면, 코드에서는 env.OPENROUTER_API_KEY로만 불러오면 됩니다. 코드 자체에는 키 값이 전혀 남지 않는 구조입니다.

실무 팁: Secrets는 Wrangler CLI에서 wrangler secret put OPENROUTER_API_KEY 명령어로도 등록할 수 있습니다. 여러 Worker를 관리한다면 이 방식이 훨씬 빠릅니다.

Cloudflare Workers Settings 화면
Cloudflare Workers Settings 화면

Cron으로 자동 실행 걸기

Workers는 매시간, 매일, 매주 단위로 자동 실행이 가능합니다. 크론 표현식 0 * * * *를 등록하면 매시간 정각에 실행됩니다.

블로그 자동화에는 이 기능이 정말 잘 맞습니다. 키워드 수집을 매시간 돌리거나, 워드프레스 발행 트리거를 하루 한 번 정해진 시각에 걸 수 있거든요. 사람이 매번 버튼을 누를 필요가 없어집니다.

여기에 KV 저장소를 붙이면 더 좋아집니다. 수집한 키워드나 검색 기록, 캐시 데이터를 Workers 안에서 바로 저장하고 불러올 수 있거든요. Storage 메뉴에서 KV를 생성하기만 하면 됩니다.

클라우드플레어 워크플로우
클라우드플레어 워크플로우

많이들 여기서 막히는 부분

많이들 여기서 막히더라고요. “Workers는 무료 플랜으로는 제대로 못 돌린다”는 오해입니다. 실제로는 개인 블로그 자동화 수준이면 무료 플랜 요청 한도 안에서 충분히 돌아갑니다.

또 하나. API Key를 코드에 그대로 두고 배포했다가 나중에야 문제를 깨닫는 경우가 있습니다. 배포 전에 코드 안에 문자열로 된 키 값이 남아있는지 한 번 더 확인하는 습관이 필요합니다.

KV 저장소를 안 쓰고 매번 새로 크롤링하는 것도 흔한 실수입니다. 캐시 없이 매시간 같은 데이터를 다시 긁으면, 요청 한도만 빠르게 소진됩니다.

바로 따라 하는 배포 체크리스트

  1. Cloudflare 계정을 Google 계정으로 가입하기
  2. Workers & Pages에서 Create → Workers로 새 Worker 생성하기
  3. Worker 이름을 용도에 맞게 지정하기 (예: nopickle-api)
  4. 기본 Hello World 코드를 지우고 AI가 준 worker.js 내용 붙여넣기
  5. 코드 안에 API Key가 그대로 남아있는지 확인 후 Secrets로 옮기기
  6. Cron Triggers에 원하는 주기 등록하기
  7. Deploy 버튼을 눌러 배포 후 워커 주소로 직접 호출 테스트하기

결국 이 구조의 진짜 가치는 복잡한 인프라 없이도 자동화 파이프라인을 돌릴 수 있다는 점입니다. 세 블로그 각각의 트렌드 수집, 발행 트리거를 Worker 하나씩으로 나눠서 운영하면 관리도 훨씬 명확해집니다. 지금 쓰고 있는 워크플로우를 그대로 옮기기만 하면 되는 거라, 진입 장벽이 생각보다 낮습니다.

여러분은 웹 대시보드와 Wrangler CLI 중 어느 쪽으로 시작하실 건가요? 지금 자동화 파이프라인에서 가장 반복적으로 손이 가는 단계는 어디인가요?

다음 글에서는 Cloudflare KV로 키워드 캐시 관리하는 법Workers와 WordPress REST API 연동 실전 코드를 다뤄보겠습니다.


본 포스팅은 정보 전달 목적이며, 실제 적용 시 발생하는 책임은 사용자에게 있습니다.

Leave a Comment