Google Cloud 무료 티어로 n8n 서버 평생 무료 호스팅하기

요약

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가 변경되지 않아 도메인을 안정적으로 연결할 수 있으며, 이는 프로덕션 환경에서 필수적인 설정입니다.

Leave a Comment