n8n 로컬 서버 설치 및 운영 가이드
n8n을 로컬 서버로 설정하려는 경우, 워크플로 자동화 도구를 효율적으로 설치하고 운영하기 위해 아래 가이드를 따라 진행할 수 있습니다. n8n은 Node.js 기반의 오픈소스 자동화 도구로, 다양한 API와 시스템을 연결하여 작업을 자동화할 수 있습니다.
1. n8n 로컬 서버 설치
1) 사전 준비
n8n을 실행하기 전에 필요한 환경을 설정합니다:
- 운영 체제: Linux(Ubuntu), macOS, 또는 Windows
- Node.js: v16 이상
- npm: Node.js와 함께 설치됨
- Docker (선택 사항): Docker로 실행할 경우
필수 소프트웨어 설치 (Ubuntu 예시)
sudo apt update
sudo apt install -y curl gnupg
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt install -y nodejs
2) n8n 설치
n8n을 전역으로 설치합니다:
sudo npm install -g n8n
설치가 완료되면, 명령어로 실행 가능합니다:
n8n
2. n8n 서버 실행
1) 기본 실행
기본 설정으로 로컬에서 실행:
n8n
- 기본 포트:
http://localhost:5678 - 다른 장치에서 접속하려면 해당 컴퓨터의 IP 주소와 포트를 사용합니다.
2) 사용자 정의 설정
환경 변수로 설정을 사용자화할 수 있습니다:
다른 호스트에서 접근 가능하도록:
export N8N_HOST=0.0.0.0
n8n
기본 포트를 변경하려면:
export N8N_PORT=8080
n8n
3) 백그라운드 실행
n8n을 항상 실행 상태로 유지하려면:
Linux 서비스로 실행
상태 확인:
sudo systemctl status n8n
서비스 활성화:
sudo systemctl daemon-reload
sudo systemctl enable n8n
sudo systemctl start n8n
서비스 파일 생성:
sudo nano /etc/systemd/system/n8n.service
파일 내용:
[Unit]
Description=n8n Service
After=network.target
[Service]
ExecStart=/usr/bin/n8n
Restart=always
User=your-username
Environment=PATH=/usr/bin:/usr/local/bin
Environment=HOME=/home/your-username
WorkingDirectory=/home/your-username
[Install]
WantedBy=multi-user.target
3. HTTPS 및 보안 설정
1) 기본 인증 활성화
n8n은 기본적으로 인증을 제공하지 않으므로, 환경 변수로 활성화:
export N8N_BASIC_AUTH_ACTIVE=true
export N8N_BASIC_AUTH_USER=admin
export N8N_BASIC_AUTH_PASSWORD=securepassword
n8n
2) HTTPS 설정
Let’s Encrypt 또는 자체 서명 인증서 사용
- 인증서 파일 준비:
/etc/ssl/certs/certificate.pem/etc/ssl/private/key.pem
환경 변수 설정:
export N8N_PROTOCOL=https
export N8N_SSL_KEY=/etc/ssl/private/key.pem
export N8N_SSL_CERT=/etc/ssl/certs/certificate.pem
n8n
4. Docker로 실행 (선택 사항)
1) Docker 설치
Docker가 설치되어 있지 않다면 설치합니다:
sudo apt install -y docker.io
sudo systemctl start docker
sudo systemctl enable docker
2) n8n Docker 이미지 실행
기본 n8n 이미지를 사용하여 컨테이너 실행:
docker run -d \
--name n8n \
-p 5678:5678 \
-e N8N_BASIC_AUTH_ACTIVE=true \
-e N8N_BASIC_AUTH_USER=admin \
-e N8N_BASIC_AUTH_PASSWORD=securepassword \
n8nio/n8n
5. n8n에 외부에서 접근 설정
1) 포트 포워딩
로컬 서버가 공유기 뒤에 있다면, 공유기에서 5678 포트를 n8n 서버의 내부 IP로 포워딩합니다.
2) Nginx 리버스 프록시 설정
Nginx를 사용해 HTTPS와 도메인 기반 접근 제공:
Nginx 활성화:
sudo ln -s /etc/nginx/sites-available/n8n /etc/nginx/sites-enabled/
sudo systemctl restart nginx
설정 파일 생성:
sudo nano /etc/nginx/sites-available/n8n
설정 내용:
server {
listen 80;
server_name your-domain.com;
location / {
proxy_pass http://localhost:5678;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
Nginx 설치:
sudo apt install nginx
6. 문제 해결
1) 포트 충돌
n8n이 시작되지 않으면, 포트를 사용하는 다른 프로세스를 확인:
sudo netstat -tuln | grep 5678
2) 로그 확인
n8n 실행 로그를 확인하여 문제를 진단:
sudo journalctl -u n8n
이 가이드를 따라 n8n 로컬 서버를 성공적으로 설치하고 운영할 수 있을 것입니다.