요약: n8n을 로컬에서 실행하려면 npm(Node.js 20.19-24.x) 또는 Docker가 필요합니다. 가장 빠른 방법은 설치 없이 즉시 테스트하기 위해 npx n8n을 사용하는 것이며, Docker는 더 나은 격리와 프로덕션 준비를 제공합니다. 두 방법 모두 반복되는 클라우드 비용 없이 n8n의 워크플로 자동화 기능에 완전히 액세스할 수 있습니다.
로컬 머신에 n8n을 설정하면 반복되는 구독료를 없애는 동시에 워크플로 자동화에 대한 완전한 제어를 제공합니다. 공식 n8n 문서에 따르면 이 플랫폼은 npm 설치의 경우 Node.js 버전 20.19에서 24.x 사이를 요구하거나 컨테이너화된 배포를 위해 Docker를 요구합니다.
로컬 호스팅과 클라우드 서비스 간의 결정은 예산과 유연성 모두에 영향을 미칩니다. 커뮤니티 토론에 따르면 로컬 설치는 무제한 워크플로를 처리하는 반면, 클라우드 플랜에는 실행 기반 가격 책정(일부 사용자 보고에 따르면 2,500회 실행에 대해 월 $24부터 시작)이 포함됩니다.
로컬 설치 전제 조건
n8n을 로컬에 설치하기 전에 시스템에는 선택한 방법에 따라 특정 소프트웨어가 필요합니다.
npm 설치에 필요한 Node.js 버전은 배포하려는 n8n 버전의 특정 요구 사항에 전적으로 따라 달라집니다. npm 자체는 현재 지원되는 모든 Node.js LTS 버전에 호환되기 때문입니다. 공식 문서는 호환성을 위해 정확한 버전 범위를 지정합니다. 터미널에서 node --version을 실행하여 현재 버전을 확인하세요.
Docker 설치에는 Docker Engine 또는 Docker Desktop이 필요합니다. n8n 팀은 깨끗한 격리를 제공하고 운영 체제 비호환성을 방지하므로 대부분의 자체 호스팅 요구 사항에 Docker를 권장합니다.
시스템 요구 사항
로컬 n8n 인스턴스는 Windows, macOS 및 Linux 시스템에서 실행됩니다. 공식 문서에는 최소 RAM 사양이 명시되어 있지 않지만 워크플로 복잡성이 실제 리소스 요구 사항을 결정합니다.
설치는 처음에 디스크 공간을 최소한으로 사용합니다. 스토리지 요구 사항은 워크플로 데이터, 실행 기록 및 사용자 지정 노드 패키지에 따라 증가합니다.

방법 1: npm으로 n8n 실행
npm 설치는 n8n을 로컬에서 실행하는 가장 빠른 경로를 제공합니다. 이 방법은 컨테이너화 없이 호스트 시스템에서 직접 작동합니다.
npx로 빠른 시작
가장 간단한 접근 방식은 영구 설치 없이 npx를 사용하는 것입니다. 터미널을 열고 실행합니다:
| npx n8n |
이 명령은 필요한 모든 것을 다운로드하고 n8n을 자동으로 시작합니다. 인터페이스는 몇 초 안에 localhost:5678에서 액세스할 수 있게 됩니다.
npx 방법은 테스트 및 평가에 완벽하게 작동합니다. 전역 npm 패키지나 영구 시스템 변경이 필요하지 않습니다.
전역 npm 설치
영구 설치의 경우 전역 npm 패키지는 일관된 액세스를 제공합니다:
| npm install n8n -g |
설치가 완료되면 언제든지 다음을 실행하여 n8n을 시작할 수 있습니다:
| n8n |
n8n의 현재 주요 안정 버전은 2.x(예: 2.10.4)입니다. 베타 버전에는 불안정한 기능이 포함될 수 있으므로 프로덕션 워크플로에서는 피해야 합니다.
구성 및 데이터 저장
npm 설치는 기본적으로 ~/.n8n 디렉터리에 워크플로 데이터를 저장합니다. 이 위치에는 자격 증명, 워크플로 정의 및 실행 기록이 포함됩니다.
환경 변수는 n8n 동작을 제어합니다. N8N_PORT 변수를 설정하여 기본 포트 5678을 변경합니다. 다른 변수는 데이터베이스 연결, 웹훅 URL 및 인증 설정을 구성합니다.
방법 2: Docker로 n8n 실행
Docker 설치는 로컬 n8n 호스팅에 권장되는 접근 방식입니다. 공식 문서는 프로덕션 자체 호스팅 요구 사항에 Docker를 강조합니다.
기본 Docker 실행 명령
단일 Docker 명령으로 n8n을 시작합니다:
| docker run -it –rm –name n8n -p 5678:5678 -v ~/.n8n:/home/node/.n8n n8nio/n8n |
이 명령은 n8n이라는 컨테이너를 생성하고, 포트 5678을 호스트에 매핑하며, ~/.n8n 디렉터리에 데이터를 영구 저장합니다.
컨테이너는 -it 플래그와 함께 대화형으로 실행됩니다. 중지 후 컨테이너를 유지하려면 --rm을 제거합니다.
프로덕션 설정을 위한 Docker Compose
Docker Compose 구성은 프로덕션 환경에 대한 더 나은 제어를 제공합니다. GitHub의 n8n-hosting 리포지토리에는 다양한 아키텍처에 대한 즉시 사용 가능한 Docker Compose 파일이 포함되어 있습니다.
기본 docker-compose.yml 구성은 다음과 같습니다:
| version: ‘3.8’ services: n8n: image: n8nio/n8n restart: always ports: – “5678:5678” environment: – N8N_BASIC_AUTH_ACTIVE=true – N8N_BASIC_AUTH_USER=admin – N8N_BASIC_AUTH_PASSWORD=password volumes: – ~/.n8n:/home/node/.n8n |
다음으로 스택을 시작합니다:
| docker-compose up -d |
-d 플래그는 컨테이너를 분리 모드로 실행하여 다른 작업을 위해 터미널을 사용할 수 있게 합니다.

초기 구성 및 액세스
두 방법 중 하나를 통해 n8n을 시작한 후 웹 브라우저에서 localhost:5678으로 이동합니다. 초기 설정 화면에서 관리자 계정에 대한 이메일 주소와 비밀번호를 요청합니다.
이 첫 번째 사용자는 전체 관리 권한을 가진 인스턴스 소유자가 됩니다. 추가 사용자는 나중에 사용자 관리 인터페이스를 통해 추가할 수 있습니다.
인증 설정
보안을 위해 로컬 설치에서도 인증을 활성화하세요. Docker Compose 구성은 인증 환경 변수를 직접 허용합니다:
| N8N_BASIC_AUTH_ACTIVE=true N8N_BASIC_AUTH_USER=admin N8N_BASIC_AUTH_PASSWORD=password |
이 변수는 HTTP 기본 인증을 활성화하여 모든 액세스 시도에 자격 증명을 요구합니다.
사용자 정의 노드 로컬 테스트
공식 문서에는 개발 중 사용자 정의 노드를 테스트하는 방법이 설명되어 있습니다. 먼저 n8n을 전역으로 설치한 다음 사용자 정의 노드 패키지를 빌드하고 연결합니다.
사용자 정의 노드 디렉터리에서 다음을 실행합니다:
| npm run build npm link |
그런 다음 n8n 노드 디렉터리(일반적으로 ~/.n8n/custom/)로 이동하여 패키지를 연결합니다:
| npm link <node-package-name> |
인스턴스를 다시 시작하면 사용자 정의 노드가 n8n 인터페이스에 나타납니다.

n8n과 함께 사용할 수 있는 유용한 자동화 리소스
n8n을 로컬에서 실행하는 방법을 배우고 로컬에서 워크플로를 테스트하는 경우, 일반적인 작업을 자동화하는 데 도움이 되는 외부 도우미 및 템플릿도 유용할 수 있습니다. Get AI Perks는 n8n과 함께 사용하거나 직접 구축하기 전에 자동화 아이디어를 프로토타이핑하는 데 사용할 수 있는 워크플로 템플릿 및 AI 지원 도구 라이브러리를 제공합니다.
Get AI Perks를 사용하면 다음을 수행할 수 있습니다:
- 미리 제작된 워크플로 템플릿부터 시작
- 일반적인 논리 및 콘텐츠에 대한 AI 지원 받기
- n8n에서 구현하기 전에 일반적인 자동화 패턴 탐색
- 템플릿을 로컬 n8n 설정과 결합
Get AI Perks를 발견하여 n8n 워크플로를 지원하는 자동화 도우미를 찾아보세요.
일반적인 문제 해결
포트 충돌은 가장 빈번한 설치 문제입니다. 포트 5678이 이미 사용 중인 경우 충돌하는 서비스를 중지하거나 N8N_PORT 환경 변수를 사용하여 n8n의 포트를 변경하세요.
노드 버전 비호환성
20.19-24.x 범위를 벗어나는 Node.js 버전을 사용하면 설치 실패가 발생합니다. n8n GitHub 리포지토리는 개발자가 로컬 개발 환경을 시도할 때 발생하는 문제를 문서화하여 Node 버전 호환성의 중요성을 강조합니다.
다른 문제를 해결하기 전에 Node 버전 호환성을 확인하세요. 필요한 경우 nvm(Node Version Manager)을 사용하여 Node 버전을 전환하세요.
Docker 볼륨 권한 오류
~/.n8n 볼륨 마운트의 권한 문제는 데이터 영구 저장을 방해합니다. Docker 컨테이너는 node 사용자로 실행되며, 이 사용자는 호스트 디렉터리에 대한 쓰기 권한이 없을 수 있습니다.
컨테이너를 시작하기 전에 적절한 권한으로 디렉터리를 생성합니다:
| mkdir ~/.n8n chmod 777 ~/.n8n |
자주 묻는 질문
인터넷 연결 없이 n8n을 실행할 수 있나요?
예, n8n은 로컬 워크플로에 대해 완전히 오프라인으로 작동합니다. 인터넷 연결은 워크플로가 외부 API 또는 클라우드 서비스와 상호 작용할 때만 필요합니다.
n8n을 로컬에서 실행하는 데 드는 비용은 얼마인가요?
로컬 설치는 무료입니다. 커뮤니티 에디션은 라이선스 비용 없이 모든 핵심 기능을 제공합니다. 클라우드 호스팅은 실행 제한 및 월별 비용으로 시작되지만, 커뮤니티 토론에 따르면 로컬 호스팅은 이러한 제한을 완전히 제거합니다.
초보자는 npm을 사용해야 할까요, Docker를 사용해야 할까요?
n8n을 테스트하는 초보자는 즉시 액세스하려면 npx로 시작해야 합니다. Docker는 더 나은 격리와 쉬운 업그레이드를 제공하므로 지속적인 사용에 더 적합합니다.
n8n은 로컬에서 워크플로 데이터를 어디에 저장하나요?
기본 데이터 디렉터리는 사용자의 홈 폴더에 있는 ~/.n8n입니다. 이 위치에는 구성되지 않은 경우 SQLite 데이터베이스 파일, 자격 증명 및 실행 로그가 포함됩니다.
한 컴퓨터에서 여러 n8n 인스턴스를 실행할 수 있나요?
예, 하지만 각 인스턴스에는 고유한 포트가 필요합니다. 각 인스턴스에 대해 N8N_PORT 환경 변수를 사용하여 다른 포트를 설정하세요. Docker는 별도의 컨테이너에서 포트 매핑을 통해 이를 더 쉽게 만듭니다.
로컬 설치의 업데이트는 어떻게 작동하나요?
npm 설치는 npm update -g n8n 또는 npm install -g n8n@latest를 통해 업데이트됩니다. Docker 사용자는 docker pull n8nio/n8n으로 최신 이미지를 가져온 다음 컨테이너를 다시 생성합니다. 항상 업데이트하기 전에 ~/.n8n 디렉터리를 백업하세요.
프로덕션 고려 사항
공식 n8n 문서는 자체 호스팅에는 기술 지식이 필요하다고 강조합니다. 서버 설정, 리소스 관리 및 애플리케이션 보안은 시스템 관리 경험을 요구합니다.
프로덕션 배포의 경우 Docker Compose가 기반을 제공합니다. HTTPS 지원을 위해 nginx 또는 Caddy와 같은 리버스 프록시를 추가하세요. n8n-hosting 리포지토리에는 배포 준비가 된 Caddy 구성이 포함되어 있습니다.
데이터베이스 선택은 대규모 워크로드에 중요합니다. 기본 SQLite 데이터베이스는 중간 규모 사용에 적합하지만, 공식 지침에 따르면 PostgreSQL은 대량 자동화에 더 나은 성능을 제공합니다.
선택하기: 로컬 vs 클라우드
로컬 n8n 호스팅은 기술적 역량과 특정 보안 요구 사항이 있는 팀에게 적합합니다. 데이터는 제어된 인프라에 유지되며 실행 제한이 사라집니다.
그러나 로컬 호스팅에는 유지 관리, 백업 및 모니터링이 필요합니다. 클라우드 호스팅은 이러한 책임을 n8n의 인프라 팀으로 이전합니다. 현재 클라우드 가격 및 기능 비교는 공식 웹사이트를 참조하세요.
n8n을 로컬에서 실행하면 워크플로 자동화 인프라에 대한 완전한 제어를 제공합니다. 빠른 테스트를 위해 npm을 사용하든 프로덕션 배포를 위해 Docker를 사용하든, 두 방법 모두 반복되는 비용 없이 전체 플랫폼을 제공합니다. 즉시 탐색하려면 npx로 시작한 다음 워크플로가 프로덕션 사용으로 이동할 때 Docker로 전환하세요.

