자동화는 편하다. 테스트도 자동, 빌드도 자동, 매일 반복하는 작업도 자동. 그런데 열심히 자동화하다 보면 어느 날 알림이 뜬다. CircleCI 무료 사용량이 바닥을 드러내기 시작했다는 소식이다.
그럼 이제 돈을 내야 하나? 다른 실행 서비스를 찾아봤더니 예상 밖의 풍경이 펼쳐진다. 무료로 일을 받아 주겠다는 곳이 줄줄이 나타나는 것이다.
컴퓨터 한 대를 채용하려고 했는데 면접 대기실이 꽉 찬 느낌이다. 단, 모두가 무제한 근무를 약속한 건 아니다.
후보들이 자기소개를 시작한다
이런 서비스의 실행기, 즉 러너는 내 노트북 대신 프로그램을 실행하는 컴퓨터다. 코드를 검사하거나 사이트를 빌드하거나 정해진 시간에 데이터를 처리한다.
Google Cloud Build는 조건에 맞는 기본 실행 환경에서 월 2,500빌드분을 무료로 제공한다. Google Cloud Run Jobs는 방식이 다르다. 월 240,000 vCPU초의 CPU 무료 할당량이 있고, CPU 하나를 기준으로 약 4,000분에 해당한다. 메모리 무료 할당량은 별도로 계산되며 지역별 요금도 확인해야 한다. 긴 일괄 작업에 더 어울린다.
Azure Pipelines는 조건에 맞는 비공개 프로젝트에 월 1,800분의 호스팅 실행 무료 할당량을 제공한다. 사용 신청과 활성화가 필요할 수 있고 작업 한 번에는 60분 제한이 있다. Buildkite는 매월 Linux 2,000 vCPU분이 무료다. CPU 두 개를 사용하는 작은 실행기라면 실제 시간으로 약 1,000분이다. GitLab Free는 월 400계산분, Bitbucket Free는 월 50빌드분을 제공한다.
GitHub Actions도 후보에 있다. 공개 저장소의 표준 호스팅 러너는 무료이며, 비공개 저장소의 GitHub Free 플랜에는 월 2,000분이 포함된다. 다만 GitHub가 제공하는 러너는 관련 소프트웨어의 개발·테스트·배포 등을 위한 것이다. 아무 계산이나 무한정 돌릴 수 있다는 뜻은 아니다.
Cloudflare Workers 무료 플랜은 하루 최대 10만 요청을 처리하지만 호출 한 번당 CPU 시간은 10밀리초다. 무거운 짐꾼보다는 초인종이나 일정 알림 담당에 가깝다. 서버를 직접 관리할 수 있다면 Oracle Cloud Always Free 가상 머신도 선택지다.
지원자는 넘쳐난다. 이제 채용 담당자가 더 바빠졌다.
무료 ‘분’에도 종류가 있다
숫자를 전부 더하면 대단한 무료 시간이 나올 것 같지만, 그건 함정이다. 빌드분과 vCPU분은 같은 단위가 아니다. CPU 두 개를 10분 쓰면 20 vCPU분으로 집계될 수 있다.
메모리, 저장 공간, 통신량, 로그, 예약 실행에는 다른 비용이 붙기도 한다. Google Cloud의 무료 범위에 속하는 서비스도 결제 계정 설정이 필요하고, 무료 한도를 넘으면 요금이 나올 수 있다.
그러니 면접장에서 ‘무료 근무 가능’이라는 말만 듣고 계약서도 읽지 않으면 안 된다. 각 후보마다 근무 규칙이 다르다.
정답은 서버 수집이 아니라 역할 분담
소스 코드와 실행 결과는 한곳에 모아 두고, 실행 장소만 작업에 따라 분리하면 된다. 빌드·테스트는 Cloud Build, 긴 정기 작업은 Cloud Run Jobs, 가벼운 알림은 Cloudflare Workers, 남은 작업은 CircleCI라는 식이다. 물론 이는 예시일 뿐이며 실제 조건에 맞춰야 한다.
핵심은 남은 무료 할당량, 중복 실행 여부, 실패 기록이다. 똑같은 일을 세 업체에 동시에 맡겨 놓으면 분산 처리가 아니라 세 번 주문한 셈이다.
CircleCI가 가득 찼다고 자동화의 길이 막히는 건 아니다. 다만 후보가 늘수록 관리가 중요해진다.
컴퓨터의 야근은 무료일 수 있어도, 컴퓨터들의 근무표를 짜는 사람은 무료가 아니다.
공식 자료(2026년 10월 12일 확인): CircleCI, Cloud Build, Cloud Run, Azure Pipelines, Buildkite, GitLab, GitHub 이용 조건.
