안녕하세요 대무무입니다.
오늘은 요즘 유행하는 AI 나 RAG 와 같은 시스템을 코딩 없이 구축 가능한 워크플로우 자동화 도구 n8n 에 대해 소개하려 합니다.
N8N
[n8n.io - a powerful workflow automation tool
n8n is a free and source-available workflow automation tool
n8n.io](https://n8n.io/)
N8N 은 워크플로 자동화를 위한 오픈소스 도구로, Zapier나 Make처럼 다양한 서비스를 연결해 자동화된 작업을 수행할 수 있게 해줍니다. 단, n8n은 자체 호스팅이 가능하고, 무제한 워크플로와 노드 커스터마이징이 가능하다는 점에서 매우 강력한 선택지입니다. 노코드 기반 시각화 UI 를 지녔고 드래그 앤 드롭으로 워크플로우를 구성할 수 있어 직관적이며 Self-hosting 이 가능하여 원하는 서버에 설치가 가능합니다. 또한 Slack, Telegram, Github, Google Sheets, PostgreSQL, HTTP 요청, SSH 접근(Download, Upload, Execute) 과 같이 약 150개 이상의 서비스 연동이 가능하여 다양한 흐름의 자동화가 가능합니다. 부득이하게 코딩이 필요한 경우 JS 스크립트와 Python 스크립트를 지원하고 로직 구현이 가능합니다. 또한 요즘 핫한 MCP Server Trigger 기능도 제공합니다.
저의 경우 유튜브 요약 AI 챗봇, Slack 과 연동한 웹페이지 학습 AI 챗봇, 트렌드별 키워드를 통한 story 작성 AI 챗봇, 서버별 Crontab 으로 관리했던 스크립트들을 모두 n8n 으로 중앙집중화, 모니터링 및 Slack 으로 알림 같은 워크플로우를 구축하여 관리중에 있습니다.
설치 방법은?
다음은 Docker Compose 파일 예제입니다.
version: '3.8'
services:
postgres:
image: postgres:16
restart: unless-stopped
ports:
- 5432:5432
environment:
- POSTGRES_USER=n8n_user
- POSTGRES_PASSWORD=n8n_password
- POSTGRES_DB=n8n
volumes:
- ./data/db:/var/lib/postgresql/data
healthcheck:
test: ['CMD-SHELL', 'pg_isready -h localhost -U n8n_user -d n8n']
interval: 5s
timeout: 5s
retries: 10
networks:
- n8n-network
redis:
image: redis:latest
healthcheck:
test: [ "CMD", "redis-cli", "--raw", "incr", "ping" ]
interval: 5s
timeout: 5s
retries: 10
networks:
- n8n-network
n8n:
image: docker.n8n.io/n8nio/n8n
restart: unless-stopped
pull_policy: always
environment:
- DB_TYPE=postgresdb
- DB_POSTGRESDB_HOST=postgres
- DB_POSTGRESDB_PORT=5432
- DB_POSTGRESDB_DATABASE=n8n
- DB_POSTGRESDB_USER=n8n_user
- DB_POSTGRESDB_PASSWORD=n8n_password
- N8N_QUEUE_TYPE=redis
- N8N_QUEUE_HOST=redis
- N8N_QUEUE_PORT=6379
- N8N_QUEUE_NAME=n8n
- GENERIC_TIMEZONE=Asia/Seoul
- TZ=Asia/Seoul
- N8N_SECURE_COOKIE=false
- WEBHOOK_URL=[외부에서 접속 가능한 HTTPS URL]
- N8N_PROXY_HOPS=1
- N8N_RUNNERS_ENABLED=true
- N8N_RUNNERS_MODE=internal
- N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=false
ports:
- 5678:5678
links:
- postgres
volumes:
- ./data/n8n:/home/node/.n8n
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
networks:
- n8n-network
networks:
n8n-network:
driver: bridge
마지막으로 docker compose 명령을 통해 실행해주시면 됩니다.
$ docker compose up -d
이후 웹 브라우저를 통해 접속하셔서 회원 가입 후 다양한 워크플로우를 만드시면 됩니다.
URL: http://[서버주소]:5678
Reference
'인프라' 카테고리의 다른 글
제 인프라를 소개합니다! (1) | 2025.05.18 |
---|---|
AWS Lambda vs Cloudflare Workers: 서버리스 컴퓨팅 7가지 차이점 비교 (2) | 2025.05.18 |
[인프라 / Docker] Slack 과 유사한 오픈 소스 협업 도구 Mattermost (0) | 2024.04.03 |
[게임 / Docker] 설날 기념! 팰월드 서버 Docker 로 운영하기 (0) | 2024.02.09 |
[인프라 / Docker] Docker Container 통합 로그 뷰어 Dozzle (0) | 2024.01.10 |