Redis와 연동되는 n8n 워크플로우 엔진 설치하기
🚀 Redis와 연동되는 n8n 워크플로우 엔진 설치하기
💡 TIP: n8n과 Redis를 연동하면 워크플로우 실행을 분산 처리할 수 있어 확장성과 안정성이 크게 향상됩니다!
워크플로우 자동화 도구인 n8n을 사용하다 보면 처리해야 할 작업이 많아질수록 성능 이슈가 발생할 수 있습니다. Redis를 큐 시스템으로 연동하면 이러한 문제를 효과적으로 해결할 수 있죠. 이 글에서는 Docker를 사용하여 Redis와 연동되는 n8n을 설치하는 방법을 단계별로 알아보겠습니다.
📑 목차
🔧 준비 사항
n8n과 Redis를 연동하기 위해 다음 항목이 필요합니다:
- 🐳 Docker가 설치된 환경
- 💻 명령줄 인터페이스(CLI) 접근 권한
- 🌐 인터넷 연결
- 📂 n8n 데이터를 저장할 로컬 디렉토리
🗑️ 기존 n8n 컨테이너 정리하기
기존에 n8n 컨테이너가 실행 중이라면, 새로운 설정으로 시작하기 전에 이를 정리해야 합니다.
docker stop n8n
docker rm n8n
이 명령은 실행 중인 n8n 컨테이너를 중지하고 삭제합니다. 걱정 마세요. 볼륨에 저장된 데이터는 그대로 유지됩니다.
🔄 Redis 컨테이너 실행하기
n8n에 연동할 Redis 컨테이너를 먼저 실행합니다. 보안을 위해 비밀번호를 설정하는 것이 좋습니다.
docker run -d --name redis -p 6379:6379 redis:7 redis-server --requirepass rkdgh5963!
📋 명령어 분석:
매개변수 설명
-d | 백그라운드에서 컨테이너 실행 |
--name redis | 컨테이너 이름을 redis로 설정 |
-p 6379:6379 | 호스트의 6379 포트를 컨테이너의 6379 포트에 매핑 |
redis:7 | Redis 버전 7 이미지 사용 |
--requirepass rkdgh5963! | Redis 접속 비밀번호 설정 |
⚠️ 주의: 실제 운영 환경에서는 더 강력한 비밀번호를 사용하세요!
⚙️ Redis 연동 n8n 설치하기
이제 Redis를 큐 시스템으로 사용하는 n8n 컨테이너를 실행합니다.
docker run -d \
--name n8n \
-p 5678:5678 \
-e QUEUE_MODE=redis \
-e REDIS_HOST=host.docker.internal \
-e REDIS_PORT=6379 \
-e REDIS_PASSWORD=rkdgh5963! \
-v C:\Users\dedes\.n8n:/home/node/.n8n \
n8nio/n8n
📋 명령어 분석:
매개변수 설명
-d | 백그라운드에서 컨테이너 실행 |
--name n8n | 컨테이너 이름을 n8n으로 설정 |
-p 5678:5678 | 호스트의 5678 포트를 컨테이너의 5678 포트에 매핑 |
-e QUEUE_MODE=redis | n8n을 Redis 큐 모드로 실행 |
-e REDIS_HOST=host.docker.internal | Redis 호스트 주소 (Windows/Mac의 Docker에서 호스트 머신 참조) |
-e REDIS_PORT=6379 | Redis 포트 설정 |
-e REDIS_PASSWORD=rkdgh5963! | Redis 접속 비밀번호 |
-v C:\Users\dedes\.n8n:/home/node/.n8n | n8n 데이터 디렉토리 매핑 (Windows 경로) |
n8nio/n8n | 사용할 n8n 이미지 |
💡 TIP: Linux 환경에서는 host.docker.internal 대신 172.17.0.1 또는 호스트의 실제 IP 주소를 사용해야 할 수 있습니다.
✅ 연결 확인 및 설정하기
n8n이 정상적으로 실행되었다면 브라우저에서 http://localhost:5678에 접속하여 n8n 웹 인터페이스에 접속할 수 있습니다.
Redis 연결을 확인하려면 다음 단계를 따르세요:
1️⃣ n8n 웹 인터페이스에서 설정(Settings) 메뉴로 이동 2️⃣ Queue 설정 섹션 확인 3️⃣ Redis 연결 정보가 올바르게 표시되는지 확인:
- Host: host.docker.internal
- Port: 6379
- Password: rkdgh5963! (또는 설정한 비밀번호)
⚠️ 주의: 실제 스크린샷에서 비밀번호는 보안상 가려진 상태로 표시됩니다.
🔍 자주 묻는 질문
❓ Redis와 n8n을 연동하면 어떤 이점이 있나요?
Redis를 큐 시스템으로 사용하면 워크플로우 실행이 분산되어 처리됩니다. 이로 인해 대량의 워크플로우를 처리할 때 성능이 향상되고, 시스템 장애 발생 시에도 작업 손실을 방지할 수 있습니다.
❓ Docker 없이도 n8n과 Redis를 연동할 수 있나요?
네, 가능합니다. npm을 통해 n8n을 설치한 경우 환경 변수를 설정하여 Redis와 연동할 수 있습니다. 관련 설정은 n8n 공식 문서를 참고하세요.
❓ 여러 n8n 인스턴스를 같은 Redis 서버에 연결할 수 있나요?
네, 가능합니다. 이것이 Redis 연동의 주요 이점 중 하나입니다. 여러 n8n 워커 인스턴스를 동일한 Redis 서버에 연결하여 부하 분산을 구현할 수 있습니다.
❓ Redis 비밀번호에 특수 문자가 포함되어 있으면 어떻게 해야 하나요?
특수 문자가 포함된 비밀번호를 사용할 경우, 환경 변수를 설정할 때 따옴표로 묶어 전달해야 합니다. Docker 명령어에서는 이스케이프 처리가 필요할 수 있습니다.
🎯 마무리
Redis와 연동된 n8n을 설치하는 방법을 살펴보았습니다. 이 구성은 특히 대량의 워크플로우를 처리하거나 높은 가용성이 필요한 환경에서 유용합니다.
💡 TIP: 프로덕션 환경에서는 Redis 클러스터와 n8n의 여러 인스턴스를 구성하여 더 높은 확장성과 안정성을 확보하세요!
이제 Redis의 강력한 큐 기능을 활용하여 n8n 워크플로우를 더 효율적으로 관리해보세요. 추가 설정이나 최적화에 관한 정보는 n8n과 Redis의 공식 문서를 참고하시기 바랍니다.
#n8n #Redis #워크플로우자동화 #Docker #큐시스템 #DevOps #자동화도구