AI

Windows 11 에서 n8n 설치하기

회사 정책상 Docker Desktop을 못 쓰는 환경까지 감안해, WSL2 + Docker Engine만으로 n8n을 올리는 방법.

회사 정책상 Docker Desktop 사용 불가한 경우를 대비해, WSL2 + Docker Engine(순수 CLI) 방법을 함께 제공합니다.


옵션 개요

  • 옵션 A: Docker Desktop + (WSL2 엔진) — 가장 간단
  • 옵션 B: WSL2 Ubuntu 안에 Docker Engine(순수 CLI) — Desktop 미사용 환경

n8n 설치 경로를 가르는 갈림길. Docker Desktop을 쓸 수 있으면 옵션 A로 두 걸음, 회사 정책으로 막혀 있으면 옵션 B로 WSL2 안에 Docker Engine을 올리는 다섯 걸음을 간다

옵션 A) Docker Desktop (가장 빠른 방법)

  1. Docker Desktop 설치
  • 설치 중/후 설정에서 Use the WSL 2 based engine 체크
  • Settings → Resources → WSL Integration에서 사용 중 배포판(예: Ubuntu) Enable integration 체크
  1. 바로 실행(데이터 보존 포함, PowerShell)
mkdir -p $env:USERPROFILE  
8n_data  
docker run -it --name n8n ^  
-p 5678:5678 ^  
-v $env:USERPROFILE  
8n_data:/home/node/.n8n ^  
n8nio/n8n:latest  
  1. docker-compose (선택, PostgreSQL)
services:  
postgres:  
image: postgres:15  
environment:  
POSTGRES_USER: n8n  
POSTGRES_PASSWORD: n8n  
POSTGRES_DB: n8n  
volumes:  
-./postgres_data:/var/lib/postgresql/data  
healthcheck:  
test: ["CMD-SHELL", "pg_isready -U n8n"]  
interval: 5s  
timeout: 5s  
retries: 10  
  
n8n:  
image: n8nio/n8n:latest  
ports:  
- "5678:5678"  
environment:  
DB_TYPE: postgresdb  
DB_POSTGRESDB_HOST: postgres  
DB_POSTGRESDB_PORT: 5432  
DB_POSTGRESDB_DATABASE: n8n  
DB_POSTGRESDB_USER: n8n  
DB_POSTGRESDB_PASSWORD: n8n  
N8N_HOST: 0.0.0.0  
N8N_PORT: 5678  
depends_on:  
postgres:  
condition: service_healthy  
volumes:  
-./n8n_data:/home/node/.n8n  
docker compose up -d  
docker compose ps  
docker compose logs -f n8n  
docker compose down  

옵션 B) Docker Desktop 없이: WSL2 Ubuntu 안에 Docker Engine(순수 CLI)

아래 단계는 Ubuntu(WSL2 터미널) 에서 실행합니다. (Windows 쪽엔 Desktop 설치 안 함)

1) WSL2에서 systemd 활성화 (한번만)

# 관리자 PowerShell에서 WSL 완전 종료  
# wsl --shutdown  
# Ubuntu 터미널에서 아래 실행  
echo -e "[boot]  
systemd=true" | sudo tee /etc/wsl.conf  

PowerShell(관리자)에서:

wsl --shutdown  

그 후 Ubuntu 재실행. (systemd가 켜진 상태로 올라옵니다)

2) Docker Engine 설치 (공식 리포지토리)

sudo apt update  
sudo apt install -y ca-certificates curl gnupg  
  
# Docker GPG 키 & 리포지토리  
sudo install -m 0755 -d /etc/apt/keyrings  
curl -fsSL [https://download.docker.com/linux/ubuntu/gpg](https://download.docker.com/linux/ubuntu/gpg) | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg  
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] [https://download.docker.com/linux/ubuntu](https://download.docker.com/linux/ubuntu) $(. /etc/os-release && echo $UBUNTU_CODENAME) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null  
  
sudo apt update  
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin  

3) 데몬 시작 & 부팅시 자동

sudo systemctl enable --now docker  

4) 권한 설정(매번 sudo 없이 사용)

sudo usermod -aG docker $USER  
newgrp docker  

5) 동작 확인

docker run hello-world  

6) n8n 실행 (CLI)

mkdir -p ~/.n8n_data  
docker run -it --name n8n -p 5678:5678 -v ~/.n8n_data:/home/node/.n8n n8nio/n8n:latest  
  • 접속: http://localhost:5678 (Windows 브라우저에서 그대로 접속 가능)
  • 중지: Ctrl + C 또는 docker stop n8n
  • 재시작: docker start -ai n8n

7) docker compose (CLI, 선택)

프로젝트 폴더 생성 후 docker-compose.yml(= compose.yaml) 저장:

위 **옵션 A - 3)**의 compose 내용을 그대로 사용 가능합니다.

docker compose up -d  
docker compose logs -f n8n  
docker compose down  

체크리스트 요약

  1. Desktop 가능: 옵션 A로 3줄 실행 → http://localhost:5678
  2. Desktop 불가: 옵션 B로 WSL2 Ubuntu에 Docker Engine 설치 → docker run...
  3. 데이터는 마운트한 폴더(%USERPROFILE%\n8n_data 또는 ~/.n8n_data)에 보존