
n8n(n eight n)은 API, DB, SaaS와 같은 여러가지 서비스를 서로 연결해서 자동적으로 업무를 수행할 수 있게 하는 워크플로우 자동화 도구입니다. 이벤트 기반으로 자동화 파이프라인을 구성할 수 있으며, 다른 자동화 도구와 비교하여 높은 자유도와 확장성을 강점으로 내세우고 있습니다.
자유도가 높다는 것은 진입 장벽 또한 높다는 의미이지만, 근래 LLM의 보편화로 인해 코드 생성이나 디버깅 난이도가 낮아짐에 따라 진입 장벽도 낮아져 대중적으로 많이 쓰이게 되었습니다.
MCP 자동화
n8n을 비롯한 워크플로우 자동화 도구가 많이 쓰이게 된 것은 AI agent 개발이 보편화 되면서, MCP 서버*로 많은 기능들을 자동으로 처리하기 시작했기 때문입니다. 각 MCP가 제공하는 정보를 종합하고, 복잡한 업무 흐름을 자동화하려면 이들을 연결해주는 도구가 필요하기 마련입니다.
*MCP 서버: AI agent가 외부 서비스의 기능을 빌려와 더 다양한 기능을 사용할 수 있도록 만들어주는 서버
특히 n8n은 Slack, Google sheet, Gmail과 같은 보편적 서비스 뿐 아니라 AI agent를 위해 개발된 최신 서비스들까지 천 여개가 넘는 서비스들을 바로 연동할 수있는 범용성을 가지고 있습니다.
노드 구조

n8n의 각 작업은 노드(node)라는 단위로 구성됩니다. 각 노드는 JSON의 형태로 입력값과 출력값을 받으며,크게 두 가지 작업 중 하나를 수행하게 됩니다.
- Trigger : 특정 이벤트에 맞게 워크플로우의 작업을 개시합니다. 트리거 노드는 주황색 번개 아이콘으로 표시됩니다.
- Action : 워크플로우의 작업을 수행합니다. 주로 데이터 처리나 외부 시스템 실행 등의 작업이 있습니다.
즉, 하나의 워크플로우는 Trigger → Action1 → Action2 → … 과 같은 구성으로 이루어져 있다고 생각할 수 있습니다.

이 모든 워크플로우를 GUI로 다룰 수 있지만, 필요에 따라 JavaScript 코드나 HTTP 요청을 직접 수정할 수도 있습니다.
설치
1. WSL + Docker Desktop 설치
n8n은 Docker*를 통해 간단하게 설치할 수 있습니다. Docker Desktop이 없다면, 먼저 설치해 주어야 합니다.
*Docker: 애플리케이션을 신속하게 구축, 테스트 및 배포할 수 있는 오픈 소스 가상화 플랫폼
https://www.docker.com/products/docker-desktop/
Docker Desktop: The #1 Containerization Tool for Developers | Docker
Docker Desktop is collaborative containerization software for developers. Get started and download Docker Desktop today on Mac, Windows, or Linux.
www.docker.com
이때, 설치 옵션 중에서 Use WSL2 instead of Hyper-V 체크를 해두어야 합니다.
n8n은 Linux 환경에서 표준적으로 작동합니다. Windows 환경에서는 WSL을 통해 n8n을 설치 및 실행할 수 있습니다. 이를 위해 WSL 또한 함께 설치해주어야 합니다.
wsl --install
최종적으로 wsl과 docker 모두 버전이 정상적으로 나오면 설치가 성공적으로 완료된 것입니다.
wsl --status
// 출력값(예시)
기본 배포: Ubuntu-24.04
기본 버전: 2
docker --version
// 출력값(예시)
Docker version 28.4.0, build d8eb465
2. 컨테이너 생성 및 실행
docker volume create n8n_data
n8n의 데이터를 저장할 docker 볼륨을 생성합니다. n8n_data는 볼륨의 이름입니다.
docker run -d -it --rm \
--name n8n \
-p 5678:5678 \
-v n8n_data:/home/node/.n8n \
docker.n8n.io/n8nio/n8n
지정한 설정에 따라 컨테이너를 생성 후 실행합니다. docker.n8n.io/n8nio/n8n는 컨테이너로 생성할 이미지 파일 이름이며, 이는 n8n에서 공식으로 제작한 파일명입니다. 몇 가지 설정을 해 두었는데, 각각의 의미는 아래와 같습니다.
| 속성 | 값 | 의미 |
| -d | 백그라운드에서 컨테이너가 실행됨. | |
| -it | 터미널에서 로그를 실시간으로 볼 수 있음. -i: interactive (입력 유지) -t: terminal 할당 |
|
| --rm | 컨테이너는 종료될 때 자동 삭제됨. (1회용일 때 적합) | |
| --name | n8n | 컨테이너 이름. |
| -p | 5678:5678 | 포트 지정. 내 PC의 5678 포트와 n8n 컨테이너의 5678 포트를 연결 |
| -v | n8n_data:/home/node/.n8n | 볼륨 n8n_data의 저장 위치를 /home/node/.n8n으로 지정 |
설치가 완료되면 아래와 같이 출력됩니다.
[license SDK] Skipping renewal on init: license cert is not initialized
Registered runner "JS Task Runner" (6KarhEyyibsJaxQMlKtWP)
Version: 2.13.4
Building workflow dependency index...
Finished building workflow dependency index. Processed 0 draft workflows, 0 published workflows.
Editor is now accessible via:
http://localhost:5678
Press "o" to open in Browser.
3. 실행
이제 http://localhost:5678에 접속하면 n8n의 GUI 인터페이스를 사용할 수 있습니다.
