요약
Google Cloud의 무료 티어를 활용하여 n8n 자동화 서버를 24시간 무중단으로 무료 운영하는 방법을 단계별로 안내합니다. E2 micro 인스턴스와 30GB 스토리지를 활용하여 완전히 무료로 n8n 서버를 구축할 수 있습니다.
주요 내용
1. Google Cloud 무료 티어 이해하기
- 무료 크레딧: 신규 가입자에게 $300 크레딧 제공 (하지만 우리는 영구 무료 티어를 사용)
- 영구 무료 제공 항목:
- E2 micro VM 인스턴스 1개 (매월)
- 사용 가능 지역: Oregon, Iowa, South Carolina
- Compute Engine용 30GB 메모리 스토리지
- 결제 정보 등록 필요하지만 무료 티어 사용 시 요금 청구 없음 (봇 방지 목적)
2. GCP 프로젝트 및 E2 인스턴스 생성
- 프로젝트 생성: GCP 콘솔에서 새 프로젝트 생성 (최소 4자 이상 이름)
- 결제 설정: 국가 선택 및 결제 정보 입력 (실제 청구 없음)
- 인스턴스 구성:
- Compute Engine API 활성화 (1-5분 소요)
- E2 micro 인스턴스 선택 (저비용 컴퓨팅 옵션)
- 스토리지 크기를 기본 10GB에서 30GB로 변경 (무료 한도 최대 활용)
- 스냅샷 비활성화 (비용 발생 방지)
- HTTP/HTTPS 트래픽 허용
- 로깅 및 모니터링 (Observability) 비활성화 (추가 비용 방지)
3. 서버 접속 및 Docker 설치
- SSH 연결: GCP 콘솔에서 SSH 버튼 클릭하여 서버 접속
- Docker 설치:
- 필요한 라이브러리 설치 (명령어 목록은 영상 설명란 링크 참조)
- Docker는 n8n 이미지를 통해 간편하게 n8n을 실행할 수 있게 해줌
- 설치 완료 후 localhost:5678에서 n8n 접근 가능
4. 네트워크 설정 및 방화벽 규칙
- VPC 방화벽 규칙 생성:
- 이름: global-access (공백 없이)
- IPv4 범위: 0.0.0.0/0 (전 세계 인터넷에서 접근 가능)
- 대상 태그: 기본 서비스 계정 사용
- 정적 IP 주소 생성:
- IP 주소가 변경되지 않도록 정적 IP 생성 (무료)
- 도메인 연결 시 필수적
5. 도메인 연결 및 DNS 설정
- 도메인 DNS 구성:
- 예시: Namecheap에서 pinkmatcha.co 도메인 사용
- Advanced DNS에서 A 레코드 생성
- 서브도메인 (n8n.pinkmatcha.co)을 정적 IP로 포인팅
- 변경사항 저장 후 몇 분 대기
6. Nginx 및 Certbot 설정 (HTTPS)
- Nginx 설치 및 구성:
- Nginx는 HTTP 포트를 n8n 포트로 연결
- 설정 파일에서 서버 이름을 자신의 서브도메인으로 변경
- 포트 80(HTTP)에서 실행되도록 설정
- Certbot으로 HTTPS 인증서 발급:
- n8n은 HTTPS만 사용하므로 필수
- Certbot 명령어 실행 시 자신의 서브도메인 입력
- 이메일 주소 입력 (인증서 갱신 알림용)
- 자동으로 SSL/TLS 인증서 발급 및 적용
7. Docker Compose로 n8n 백그라운드 실행
- 영구 실행 설정:
- n8n-compose 폴더 생성
- .env 파일 생성 및 도메인 정보 입력
- local-files 폴더 생성 (워크플로우, 자격증명 저장용)
- docker-compose.yml 파일 생성
sudo docker compose up명령으로 실행
- 시스템 재시작 시에도 자동 실행되도록 구성
8. n8n 계정 설정 및 웹훅 테스트
- 초기 설정:
- 브라우저에서 n8n.pinkmatcha.co 접속
- 소유자 계정 생성 (읽기/쓰기 권한)
- 빈 워크스페이스 확인
- 웹훅 테스트:
- 웹훅 노드 생성 (경로: /api/test)
- “Respond to Webhook” 노드 연결
- 응답 텍스트 설정: “Hey there, the setup is complete”
- 워크플로우 저장 및 활성화
- 프로덕션 URL로 접속하여 정상 작동 확인
9. 비용 확인 및 사용 경험
- 청구서 확인:
- GCP 콘솔 결제 섹션에서 비용 확인
- 무료 크레딧 할당 확인
- 현재까지 발생한 비용: $0
- 영상 제작자는 2개월간 사용하며 비용 발생 없음
- 성능 한계:
- 2GB RAM만 제공되어 가끔 서비스가 느려질 수 있음
- 더 강력한 인스턴스가 필요하면 유료 업그레이드 가능
- 테스트 및 학습 목적으로는 충분한 성능
핵심 인사이트
- 완전 무료 자동화 서버: Google Cloud의 영구 무료 티어를 활용하면 자체 호스팅 부담 없이 24/7 n8n 서버를 운영할 수 있습니다. 노트북을 24시간 켜둘 필요가 없습니다.
- 비용 최적화 전략: 스냅샷, 로깅, 모니터링 등 추가 비용이 발생하는 기능은 모두 비활성화하고, 대신 GitHub나 Excel 파일에 데이터를 백업하는 방식으로 무료 한도 내에서 운영할 수 있습니다.
- HTTPS 필수 설정: n8n은 보안을 위해 HTTPS만 사용하므로, Nginx와 Certbot을 통한 SSL/TLS 인증서 설정은 필수적입니다. 이를 통해 외부에서 안전하게 접근할 수 있습니다.
- 자동화 및 AI 학습의 시작점: 비록 성능에 한계가 있지만 (2GB RAM), AI 자동화를 배우고 실험하기에는 충분한 환경이며, 더 강력한 성능이 필요하면 언제든지 유료로 업그레이드할 수 있는 확장성을 제공합니다.
- 정적 IP와 도메인 연결의 중요성: 정적 IP 주소를 생성하면 서버 IP가 변경되지 않아 도메인을 안정적으로 연결할 수 있으며, 이는 프로덕션 환경에서 필수적인 설정입니다.