Kimi K2.7 Code is now on CometAPI — Kimi's most intelligent coding model to date, reliably follows instructions in long contexts and completes programming tasks with a higher success rate. Try it now

n8n을 자체 호스팅하고 CometAPI 노드를 로컬에서 실행하는 방법

CometAPI
AnnaSep 2, 2025
n8n을 자체 호스팅하고 CometAPI 노드를 로컬에서 실행하는 방법

AI는 빠르게 발전하고 있습니다. 새로운 멀티모달 모델과 향상된 실시간 API 덕분에 강력한 AI를 자동화 플랫폼에 내장하기가 쉬워졌고, 동시에 안전성과 관측 가능성에 대한 논의가 운영팀의 프로덕션 시스템 운영 방식을 재편하고 있습니다. 로컬 자동화를 구축하는 사람들에게는 실용적인 패턴이 떠오르고 있습니다. 통합 모델 게이트웨이(예: CometAPI)로 여러 모델에 접근하고, 그 모델 호출을 자체 호스팅 자동화 러너(예: n8n)에 연결하여 데이터, 지연 시간, 비용을 직접 통제하는 것입니다. 이 가이드는 **CometAPI + n8n (local)**을 시작하는 방법을 단계별로 보여주고, 주의할 점과 문제가 생겼을 때의 트러블슈팅 방법을 안내합니다.

n8n은 무엇이고 왜 AI 자동화에 중요합니까?

n8n은 비주얼 에디터와 방대한 노드(커넥터) 생태계를 갖춘 오픈 소스 워크플로 자동화 도구입니다. 트리거, 변환, 외부 API 호출을 연쇄하여 반복 가능한 워크플로(웹훅, 예약 작업, 파일 처리, 챗봇 등)를 만들도록 설계되어 있습니다. n8n을 로컬로 자체 호스팅하면 데이터 레지던시와 실행을 완전히 통제할 수 있으며, 이는 민감한 입력을 처리하는 서드파티 AI 모델을 호출할 때 특히 가치가 있습니다.

n8n은 실제로 어떻게 작동하나요?

  • 트리거(Webhook, Cron)와 액션 노드(HTTP Request, 데이터베이스 노드, 이메일)를 갖춘 비주얼 캔버스
  • 커뮤니티 노드로 기능 확장 — 커뮤니티 패키지를 설치해 네이티브 노드처럼 사용할 수 있습니다

자체 호스팅한 n8n이 제공하는 이점:

  • 완전한 데이터 통제 — 워크플로와 실행 데이터가 여러분이 관리하는 인프라에 머뭅니다.
  • 맞춤화 — 클라우드 기능을 기다리지 않고 프라이빗 노드나 로컬 통합을 추가합니다.
  • 비용 예측 가능성 — 내부 대량 자동화에 대해 작업당 클라우드 과금의 의외성을 줄입니다.
  • 보안 및 컴플라이언스 — 내부 정책과 규제 요구사항을 충족하기가 더 쉽습니다.

CometAPI는 무엇이며 모델 게이트웨이로 사용하는 이유는?

CometAPI는 수백 개의 서드파티 AI 모델(텍스트, 임베딩, 이미지 생성 등)을 단일의 OpenAI 호환 인터페이스와 과금 모델 뒤에 노출하는 통합 API 게이트웨이입니다. 즉, 사용해 보고 싶은 LLM이나 이미지 엔진마다 별도 통합을 추가하는 대신 하나의 API를 호출하고 요청에서 원하는 모델을 선택하면 됩니다. 이는 실험, 비용 통제, 운영 통합을 간소화합니다.

장점:

  • 모델 선택: 동일한 코드 경로로 다양한 벤더/모델을 시도할 수 있습니다.
  • 토큰 풀링 / 무료 할당량: 많은 통합 게이트웨이가 실험용 크레딧/티어를 제공합니다.
  • 간단한 인프라: 하나의 인증 시스템과 하나의 베이스 URL만 관리하면 됩니다.

CometAPI 액세스와 키를 어떻게 얻나요?

  1. CometAPI 사이트(또는 벤더 대시보드)에서 Sign up하세요. 대부분의 게이트웨이는 테스트용 무료 티어를 제공합니다.
  2. CometAPI 대시보드에서 Get an API key — 길고 비밀스러운 문자열을 발급받습니다. 문서에 키를 어디에 배치해야 하는지 나와 있으니 확인하세요(CometAPI는 https://api.cometapi.com/v1).에 대해 Bearer 인증을 사용합니다).
  3. 사용하려는 엔드포인트(챗 컴플리션, 이미지, 임베딩)에 대한 Read the API docs를 확인합니다. CometAPI는 /v1/chat/completions/v1/images/generations 같은 엔드포인트를 문서화합니다.

n8n을 자체 호스팅하고 CometAPI 노드를 로컬에서 실행하는 방법


왜 n8n과 CometAPI 사이의 결합(통합)이 중요합니까?

여기서 “Bonding”은 자동화 러너(n8n)와 모델 게이트웨이 사이의 신뢰할 수 있고 안전한 통합 경로를 의미합니다. 올바른 결합이 중요한 이유:

  • 호출 간 컨텍스트(대화 기록, 임베딩)를 보존합니다.
  • 자격 증명과 시크릿을 한 곳에 중앙화해 교체를 더 안전하게 만듭니다.
  • 예측 가능한 엔드포인트와 표준 요청 포맷을 사용해 지연과 오류 표면을 줄입니다.
  • 어떤 모델, 프롬프트, 응답이 결과를 만들었는지 파악할 수 있어 관측 가능성과 트러블슈팅을 가능하게 합니다.

요약하면: 좋은 결합은 운영 리스크를 낮추고 반복 속도를 높입니다.

n8n을 로컬로 배포하려면? (빠른 실용 가이드)

n8n은 npm 또는 Docker로 로컬 실행할 수 있으며, Docker Compose가 대부분의 자체 호스팅 시나리오에서 권장됩니다(재현 가능하고 종속성을 격리합니다). 아래는 최소한의 Docker Compose 예시와 핵심 노트입니다.

Docker로 n8n을 자체 호스팅하는 방법은?

Docker(및 Docker Compose)는 프로덕션에서 n8n을 실행하는 가장 견고하고 재현 가능한 방법입니다. 앱을 격리하고 업그레이드를 간단하게 하며, 리버스 프록시와 오케스트레이터(Docker Swarm, Kubernetes)와도 잘 맞습니다. n8n의 공식 문서에는 여기서 따르고 조정할 Docker Compose 레퍼런스가 포함되어 있습니다.

프로덕션에서는 일반적으로 다음 스택을 실행합니다:

  • n8n 서비스(공식 이미지: docker.n8n.io/n8nio/n8n 또는 태그에 따라 n8nio/n8n)
  • PostgreSQL(또는 다른 지원 DB)
  • Redis(큐 모드를 사용할 계획이라면)
  • 리버스 프록시(Traefik, Caddy, 또는 nginx) — TLS, 호스트 라우팅, 레이트 리밋 규칙 처리

이 아키텍처는 관심사를 명확히 분리(DB 영속성, 큐잉, 웹 프록시)하고 확장 및 백업을 간단하게 합니다. 공식 n8n 문서에는 Docker Compose 패턴과 환경 변수 레퍼런스가 제공됩니다.

다음은 step-by-step guide입니다:

  1. 폴더를 만들고 표준 n8n 서비스를 포함하는 docker-compose.yml을 작성하세요. 아래는 일반적인 프로덕션 요구사항을 다루는 실용적 docker-compose 예시입니다: 외부 Postgres, Redis(큐/실행 모드용), 영구 볼륨, TLS를 처리하는 Nginx 리버스 프록시:
```yaml
version: "3.8"
services:
  n8n:
    image: n8nio/n8n:latest
    restart: unless-stopped
    environment:
      - DB_TYPE=postgresdb
      - DB_POSTGRESDB_HOST=postgres
      - DB_POSTGRESDB_PORT=5432
      - DB_POSTGRESDB_DATABASE=n8n
      - DB_POSTGRESDB_USER=n8n
      - DB_POSTGRESDB_PASSWORD=supersecretpassword
      - N8N_BASIC_AUTH_ACTIVE=true
      - N8N_BASIC_AUTH_USER=admin
      - N8N_BASIC_AUTH_PASSWORD=anothersecret
      - WEBHOOK_TUNNEL_URL=https://n8n.example.com
      - EXECUTIONS_MODE=queue
      - QUEUE_BULL_REDIS_HOST=redis
    ports:
      - "5678:5678"
    volumes:
      - n8n_data:/home/node/.n8n
    depends_on:
      - postgres
      - redis

  postgres:
    image: postgres:15
    environment:
      POSTGRES_DB: n8n
      POSTGRES_USER: n8n
      POSTGRES_PASSWORD: supersecretpassword
    volumes:
      - pgdata:/var/lib/postgresql/data

  redis:
    image: redis:7
    volumes:
      - redisdata:/data

volumes:
  n8n_data:
  pgdata:
  redisdata:
```
  1. 시작:
docker compose up -d

  1. http://localhost:5678에 방문해 관리자 사용자를 생성하세요. 프로덕션에서는 Postgres, SSL, 적절한 환경 변수가 필요합니다 — 공식 Docker Compose 문서를 참조하세요.

노트 & 하드닝:

  • docker-compose.yml에 시크릿을 평문으로 저장하지 마세요. 프로덕션에서는 환경 파일, Docker 시크릿, 외부 시크릿 매니저를 사용하세요.
  • WEBHOOK_URL을 실제 퍼블릭 URL로 바꾸고 리버스 프록시가 n8n.example.com을 n8n 컨테이너로 라우팅하도록 설정하세요.
  • 견고한 백그라운드 처리를 위해 EXECUTIONS_MODE=queue를 사용하세요. 큐 워커와 Redis가 필요합니다.

npm / Node.js로 n8n을 자체 호스팅하는 방법은?

npm(또는 pnpm)으로 설치하면 n8n이 호스트에서 직접 실행됩니다. 이는 더 가볍고(컨테이너 레이어 없음) 단일 사용자, 저복잡도 설치나 개발자 머신에 도움이 될 수 있습니다. 그러나 종속성 관리, 격리, 서비스 감독에 대한 책임이 관리자에게 더 크게 부여됩니다. 공식 n8n 문서에는 npm 설치 가이드와 주의사항이 포함되어 있습니다.

필요한 OS 패키지와 Node 버전:

  • 안정적인 LTS Node.js를 사용하세요(Node 18 또는 Node 20+, n8n 릴리스 요구사항에 맞추기).
  • build-essential, git, 그리고 프로세스 매니저(권장: systemd)를 설치하세요.
  • 프로덕션에서는 Docker와 같은 이유로 PostgreSQL과 Redis를 외부 서비스로 사용하세요.

npm으로 n8n을 설치 및 실행하는 방법(단계별)

1.Install Node.js(권장: nvm)

# Install nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

# Reload your shell (adjust to your shell startup file if needed)
source ~/.bashrc  # or ~/.zshrc

# Install and use the latest LTS (usually 18 or 20)
nvm install --lts
nvm use --lts

# Verify
node -v
npm -v

나중에 “n8n: command not found”가 표시되면 터미널을 재시작하거나 nvm이 관리하는 npm 글로벌 bin 경로가 PATH에 있는지 확인하세요.


2. Install and start n8n (local)

npm install -g n8n
n8n -v  # verify version

3. 포그라운드로 시작:

n8n start

기본 URL: http://localhost:5678/ 포트가 사용 중인 경우:

export N8N_PORT=5679
n8n start

옵션: 백그라운드에서 계속 실행(여전히 로컬):

npm install -g pm2
pm2 start "n8n" --name n8n
pm2 save
pm2 status

4 .첫 접속 및 로그인:

  • 브라우저에서 http://localhost:5678/ 을 엽니다.
  • 첫 실행 시 마법사를 따라 Owner 계정(이메일 + 비밀번호)을 생성하고 로그인합니다.

n8n에서 CometAPI 커뮤니티 노드를 설치하거나 구성하려면?

n8n은 검증된 커뮤니티 노드(GUI 설치)와 자체 호스팅 시 npm을 통한 수동 설치를 모두 지원합니다. CometAPI를 n8n에 통합하는 방법은 두 가지입니다:

옵션 A — CometAPI 커뮤니티 노드 사용(노드 패널에서 사용 가능한 경우)

  1. n8n에서 노드 패널을 열세요(+ 또는 Tab).
  2. CometAPI가 검증된 커뮤니티 노드로 “More from the community”에 표시됩니다. 클릭하여 설치하세요.
  3. 설치 후 프롬프트가 뜨면 n8n을 재시작하세요. Settings → Credentials에서 새 Credential을 만들고(노드가 CometAPI 자격 증명 타입을 제공하는 경우 이를 선택) CometAPI 토큰을 붙여넣습니다.

옵션 B — 수동 설치(GUI 설치가 불가능할 때)

1.SSH로 n8n 호스트/컨테이너에 접속합니다.

2. 글로벌 n8n node_modules 또는 커스텀 폴더에 패키지를 설치합니다:

  • Settings(좌하단) > Community nodes로 이동합니다클릭 “
  • Install a community node”
  • “npm Package Name”에 @cometapi-dev/n8n-nodes-cometapi를 입력합니다리스크 확인 박스에 체크클릭 “
  • Install”설치 후 노드 패널에서 “CometAPI”를 검색할 수 있습니다.

3.n8n을 재시작하세요. 인스턴스가 큐 모드로 실행 중이라면 문서에 설명된 수동 설치 경로를 따라야 합니다.

노드가 설치되었는지 확인하는 방법

  • 재시작 후 노드 패널을 열고 “CometAPI” 또는 “Comet”를 검색하세요. 해당 노드는 커뮤니티 패키지로 표시됩니다.
  • 노드가 보이지 않으면: 인스턴스 Owner 계정이 사용 중인지(설치는 Owner만 가능), 컨테이너/이미지 로그에서 패키지가 오류 없이 설치되었는지 확인하세요.

워크플로를 생성하고 API를 구성하는 방법

1. 새 워크플로 생성

  • n8n 인스턴스(자체 호스팅)에 로그인합니다.
  • **"Add Workflow"**를 클릭하여 새로운 자동화 캔버스를 시작합니다.

2.노드 추가

  • 트리거 노드를 추가합니다: “Manual Trigger” 또는 “When clicking ‘Execute workflow’”를 검색합니다.
  • 캔버스 오른쪽의 “+”를 클릭하고 “CometAPI”를 검색해 노드를 추가합니다.
  • 왼쪽 노드 목록에서 “CometAPI”를 검색한 후 캔버스로 드래그해도 됩니다.

3.자격 증명 구성(최초 1회만):

  • CometAPI 노드에서 “Credential to connect with” 아래에서 “Create new”를 선택합니다.
  • CometAPI 콘솔에서 발급한 토큰을 “CometAPI Key”에 붙여넣습니다.
  • 저장합니다. Base URL은 https://api.cometapi.com으로 기본 설정되어 있으며 일반적으로 변경할 필요가 없습니다.

4. 모델과 메시지 구성:

Model: 지원되는 모델을 입력합니다. 예: gpt-4o 또는 gpt-4o-mini.

Messages: 역할과 컨텍스트를 채워야 하며, Role에 대해 user 또는 system을 선택할 수 있습니다.

필요 시 선택적 파라미터: Maximum Number of Tokens(예: 4096); Sampling Temperature(예: 0.7); PenaltyStream(스트리밍 활성화/비활성화). 구체적인 파라미터 문서와 설명은 CometAPI 문서를 참조하세요.

5.Text 실행:

CometAPI 노드를 선택하고 “Execute step”을 클릭하거나, 하단의 “Execute workflow”를 클릭합니다.
오른쪽 OUTPUT 패널에 JSON 응답(choices, usage 등 포함)이 표시되어야 합니다.

이로써 Linux에서 npm으로 로컬에 n8n(Recommend)을 설치하고, CometAPI 커뮤니티 노드를 설치 및 구성했으며, gpt-4o 같은 모델을 호출해 응답을 받을 수 있는 워크플로를 실행할 수 있습니다.

흔한 문제와 트러블슈팅 방법은?

1) “401 Unauthorized” 또는 “Invalid API key”

  • CometAPI 대시보드에서 정확한 토큰 문자열을 확인하세요(유사한 이름의 토큰이 있을 수 있습니다). 복사 → n8n 자격 증명에 붙여넣고 필요 시 노드를 재시작합니다.
  • Authorization 헤더 포맷이 Bearer sk-xxxxx인지 확인하세요.

2) 커뮤니티 노드 설치 실패 / “queue mode”

  • n8n이 queue mode로 실행 중인 경우 GUI 설치가 비활성화될 수 있습니다. npm을 통한 수동 설치 문서를 따라 커뮤니티 노드를 설치하거나 노드를 포함한 커스텀 이미지를 빌드하세요. 설치 후 n8n을 재시작합니다.

3) 설치 후 패널에서 노드를 찾을 수 없음

  • n8n을 재시작하세요.
  • 올바른 컨텍스트(컨테이너 이미지 내부 또는 .n8n/custom 경로 패턴 사용)에 패키지를 설치했는지 확인합니다.
  • 컨테이너 로그에서 모듈 해결 오류가 없는지 확인합니다.

4) 레이트 리밋 또는 할당량 문제

  • CometAPI 대시보드에서 사용량과 할당량을 확인하세요.
  • 한계 경고나 HTTP 429를 감지하면 지수 백오프를 구현하고 더 저렴한 모델로 폴백하세요.

커뮤니티 노드가 없거나 더 유연성을 원한다면 대안이 있나요?

네 — HTTP Request 노드를 직접 사용하면 됩니다(완전한 제어). 또는 베이스 URL 리디렉션을 사용하는 OpenAI 노드(실용적인 지름길)를 사용할 수 있습니다. 원시 HTTP를 사용하면 새 CometAPI 엔드포인트(예: 이미지/비디오 엔드포인트)가 출시될 때 바로 채택하기도 간단합니다. 자세한 내용은 Guide를 참조하세요.

See Also How to Use n8n with CometAPI

결론:

CometAPI는 모델 선택과 운영 단순성을 제공하고, n8n은 비주얼 오케스트레이션과 확장성을 제공합니다. 빠른 채팅/컴플리션 통합에는 OpenAI 자격 증명 트릭을 사용하고, 커뮤니티 노드는 존재하고 신뢰할 수 있을 때 활용하세요. 모든 워크플로에 비용, 지연, 보안을 계측하고, 중요한 의사결정에는 인간 폴백을 선호하며, 빠르게 변하는 AI 벤더 환경에 적응할 수 있도록 모델 선택을 동적으로 유지하세요. n8n과 CometAPI의 조합은 강력하지만, 모든 강력한 도구와 마찬가지로 가드레일이 필요합니다 — 관찰하고, 테스트하고, 반복하세요.

AI 개발 비용을 20% 절감할 준비가 되셨나요?

몇 분 안에 무료로 시작하세요. 무료 체험 크레딧 제공. 신용카드 불필요.

더 보기