Docker Compose 기반 셀프호스팅과 n8n Cloud 가입 두 가지 방법으로 n8n 환경을 구축하고, 핵심 환경 변수를 설정해 안전하게 운영한다.
🎯 학습 목표
이 강을 마치면 다음을 할 수 있습니다.
- Docker Compose를 사용해 로컬에서 n8n을 실행할 수 있습니다.
- n8n Cloud 무료 플랜에 가입하고 첫 워크플로우를 만들 수 있습니다.
- 핵심 환경 변수를 설정해 n8n을 안전하게 운영할 수 있습니다.
- 셀프호스팅과 클라우드 중 자신에게 맞는 방식을 선택할 수 있습니다.
💡 두 가지 선택지 — 셀프호스팅 vs 클라우드
이 섹션에서는 n8n을 시작하는 두 가지 경로의 특성과 선택 기준을 살펴보겠습니다.
n8n을 시작하는 방법은 크게 두 가지입니다. 첫 번째는 셀프호스팅(Self-hosting)으로, 자신의 컴퓨터나 서버에 n8n을 직접 설치해 운영하는 방식입니다. 두 번째는 n8n Cloud로, n8n 회사에서 제공하는 관리형 SaaS 서비스를 구독하는 방식입니다. 각 방식은 용도와 상황에 따라 장단점이 뚜렷하게 다릅니다.
| 항목 | 셀프호스팅 | n8n Cloud |
|---|---|---|
| 비용 | 서버비만 부담 (VPS $5~20/월) | 월 $20~(플랜별 상이) |
| 설정 난이도 | 중간 (Docker 지식 필요) | 매우 쉬움 (가입 즉시 사용) |
| 데이터 위치 | 내 서버 | n8n 클라우드 서버 |
| 유지보수 | 직접 업데이트·백업 | 자동 관리 |
| 확장성 | 서버 스펙에 따라 자유롭게 | 플랜 업그레이드로 |
| 추천 대상 | 개발자, 보안 중시, 대용량 | 비개발자, 빠른 시작 |
이 강에서는 두 방식 모두를 단계별로 안내합니다. 학습 목적이라면 n8n Cloud의 무료 트라이얼로 빠르게 시작한 뒤, 나중에 셀프호스팅으로 전환하는 것을 권장합니다.
🐳 Docker Compose로 로컬 n8n 실행하기
이 섹션에서는 Docker를 사용해 로컬 컴퓨터에 n8n을 설치하는 방법을 단계별로 살펴보겠습니다.
Docker는 애플리케이션을 컨테이너라는 격리된 환경에서 실행하는 플랫폼입니다. n8n을 Docker로 실행하면 운영체제나 기존 환경에 영향 없이 깨끗하게 설치하고 제거할 수 있습니다. 먼저 Docker Desktop이 설치되어 있어야 합니다. Docker 공식 사이트(docker.com)에서 운영체제에 맞는 버전을 내려받아 설치하십시오.
Docker가 준비되었다면 작업 폴더를 만들고 docker-compose.yml 파일을 작성합니다. 아래는 로컬 개발 환경에 권장하는 최소 구성입니다.
version: '3.8'
services:
n8n:
image: n8nio/n8n:latest
restart: always
ports:
- '5678:5678'
environment:
- N8N_BASIC_AUTH_ACTIVE=true
- N8N_BASIC_AUTH_USER=admin
- N8N_BASIC_AUTH_PASSWORD=your_password_here
- N8N_HOST=localhost
- N8N_PORT=5678
- N8N_PROTOCOL=http
- WEBHOOK_URL=http://localhost:5678/
- GENERIC_TIMEZONE=Asia/Seoul
volumes:
- n8n_data:/home/node/.n8n
volumes:
n8n_data:
위 파일을 저장한 디렉터리에서 터미널을 열고 아래 명령어를 실행합니다.
docker compose up -d
-d 플래그는 백그라운드(detached mode)로 실행한다는 의미입니다. 처음 실행 시 n8n 이미지를 다운로드하기 때문에 수분이 걸릴 수 있습니다. 완료되면 브라우저에서 http://localhost:5678로 접속하면 n8n 로그인 화면이 나타납니다. docker-compose.yml에 설정한 사용자명과 비밀번호로 로그인합니다.
n8n을 중지하려면 docker compose down, 재시작하려면 docker compose restart를 사용합니다. 데이터는 n8n_data 볼륨에 저장되므로 컨테이너를 내렸다가 올려도 워크플로우가 유지됩니다.
⚙️ 핵심 환경 변수 완전 이해
이 섹션에서는 n8n 운영에 필수적인 환경 변수들을 의미와 함께 살펴보겠습니다.
환경 변수(Environment Variables)는 코드 외부에서 애플리케이션의 동작을 제어하는 설정값입니다. n8n은 수십 개의 환경 변수를 지원하지만, 처음 설정에서 반드시 알아야 할 핵심 변수는 다음과 같습니다.
| 환경 변수 | 역할 | 예시값 |
|---|---|---|
N8N_BASIC_AUTH_ACTIVE | 기본 인증 활성화 여부 | true |
N8N_BASIC_AUTH_USER | 로그인 사용자명 | admin |
N8N_BASIC_AUTH_PASSWORD | 로그인 비밀번호 (강력하게 설정) | 복잡한 비밀번호 |
N8N_HOST | n8n이 바인딩할 호스트 | localhost 또는 도메인 |
N8N_PORT | 접속 포트 | 5678 |
N8N_PROTOCOL | HTTP 또는 HTTPS | http (로컬), https (서버) |
WEBHOOK_URL | 외부에서 웹훅을 받을 전체 URL | https://n8n.example.com/ |
GENERIC_TIMEZONE | 스케줄 트리거 기준 시간대 | Asia/Seoul |
N8N_ENCRYPTION_KEY | Credentials 암호화 키 (운영 필수) | 32자 이상 무작위 문자열 |
DB_TYPE | 데이터베이스 종류 (기본: sqlite) | postgresdb (운영 권장) |
보안 관련 주의사항을 반드시 기억하십시오. N8N_ENCRYPTION_KEY는 Credentials(API 키, 비밀번호 등)를 암호화하는 키입니다. 이 값을 분실하면 저장된 모든 인증 정보를 복구할 수 없으므로, 반드시 안전한 곳에 백업해 두어야 합니다. 또한 인터넷에 연결된 서버에서 운영할 때는 N8N_BASIC_AUTH_ACTIVE=true를 반드시 설정하십시오. 인증 없이 공개 인터넷에 n8n을 노출하면 누구나 여러분의 워크플로우와 API 키에 접근할 수 있어 심각한 보안 위협이 됩니다.
☁️ n8n Cloud로 빠르게 시작하기
이 섹션에서는 Docker 없이 즉시 n8n을 시작할 수 있는 클라우드 방식을 살펴보겠습니다.
n8n Cloud는 설치 없이 가입만 하면 바로 사용할 수 있는 관리형 서비스입니다. 무료 트라이얼 기간 동안 n8n의 모든 기능을 제한 없이 체험할 수 있어, 처음 배우는 단계에서 가장 빠른 시작 방법입니다.
가입 절차는 다음과 같습니다. n8n.io 공식 사이트에 접속해 [Get started for free] 버튼을 클릭합니다. 이메일 주소와 비밀번호를 입력하거나 Google 계정으로 로그인합니다. 조직명과 사용 목적을 선택하면 즉시 n8n 에디터 화면이 열립니다. 별도의 서버 설정이나 Docker 지식 없이 수십 초 만에 n8n 환경이 준비됩니다.
클라우드 플랜은 워크플로우 실행 횟수(Executions) 기준으로 과금됩니다. 무료 트라이얼 이후에는 Starter($20/월, 2,500회/월), Pro($50/월, 10,000회/월), Enterprise(맞춤 가격) 플랜 중 선택할 수 있습니다. 학습 목적이라면 트라이얼 기간이 충분하며, 실제 운영 전환 시 셀프호스팅이나 유료 플랜을 검토하면 됩니다.
🔑 첫 접속 후 계정 설정
이 섹션에서는 n8n에 처음 로그인한 뒤 기본 설정을 완료하는 방법을 살펴보겠습니다.
셀프호스팅이든 클라우드든, n8n에 처음 접속하면 계정 설정 화면이 나타납니다. 이메일과 이름을 입력하고 사용 목적을 선택하면 메인 에디터 화면으로 진입합니다. 이 단계에서 몇 가지 초기 설정을 해두면 이후 작업이 훨씬 편리합니다.
첫째, 시간대 설정입니다. 오른쪽 상단 메뉴 → Settings → Personal에서 Timezone을 Asia/Seoul로 설정합니다. 셀프호스팅의 경우 환경 변수 GENERIC_TIMEZONE=Asia/Seoul로도 설정 가능합니다. 스케줄 트리거를 사용할 때 한국 시간 기준으로 정확하게 동작하려면 반드시 필요합니다.
둘째, 커뮤니티 노드 설치 허용입니다. Settings → Community Nodes에서 Install community nodes 옵션을 활성화합니다. 공식 노드 외에 커뮤니티가 개발한 추가 노드를 설치할 수 있게 됩니다. 셀프호스팅 환경에서 환경 변수 N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true도 함께 설정하면 AI 에이전트 도구로 커뮤니티 노드를 활용할 수 있습니다.
셋째, 첫 워크플로우 생성 확인입니다. [+ New workflow] 버튼을 클릭하면 빈 캔버스가 열립니다. 이것이 여러분이 앞으로 자동화를 만들 작업 공간입니다. 지금은 캔버스가 비어 있지만, 다음 강에서부터 실제 노드를 추가하고 연결하는 법을 배우게 됩니다.
📝 핵심 요약
| 핵심 개념 | 내용 |
|---|---|
| 셀프호스팅 | Docker Compose로 설치, 비용 저렴, 데이터 주권 확보 |
| n8n Cloud | 가입 즉시 사용, 유지보수 불필요, 빠른 시작에 최적 |
| 필수 환경 변수 | 인증(N8N_BASIC_AUTH_*), 암호화키(N8N_ENCRYPTION_KEY), 시간대(GENERIC_TIMEZONE) |
| 보안 주의 | 공개 서버는 반드시 인증 활성화, 암호화 키 안전 보관 |
| 초기 설정 | 시간대, 커뮤니티 노드 허용 설정 후 시작 |
다음 강에서는 n8n UI 전체를 투어합니다. 캔버스·노드 패널·연결선·실행 로그 등 에디터의 각 영역이 어떤 역할을 하는지 파악하면, 이후 실습이 훨씬 수월해집니다.
관련 주제
- Docker Compose
- n8n Cloud
- N8N_BASIC_AUTH
- 환경 변수 설정
- 셀프호스팅 설치
- 무료 플랜 가입
- AI 기술
- AI 기술 강의
- n8n + AI 워크플로우 설계법 20강
- 무료강의
- 무료 온라인 강의
- NUGUNA
- 누구나
