n8n의 Docker 환경에서 bcrypt, base64-url 등의 Node.js 모듈을 사용하려면, 아래 방식 중 하나를 선택하여 설치해야 합니다.


✅ 권장 방식: Dockerfile을 사용하여 커스텀 이미지 생성

n8n Docker 이미지를 베이스로 커스텀 이미지를 만들고, 필요한 패키지를 설치합니다.

1.Dockerfile

작성

FROM docker.n8n.io/n8nio/n8n:lastest

# 필요한 모듈 설치
RUN npm install --prefix /home/node/.n8n bcrypt base64-url

2. 커스텀 이미지 빌드

docker build -t n8n-custom .

3. 커스텀 이미지 실행

docker run -it --restart unless-stopped --name n8n \\
  -p 5678:5678 \\
  -v n8n_data:/home/node/.n8n \\
  -e WEBHOOK_URL="<https://datapopcorn.win>" \\
  -e N8N_SMTP_HOST="smtp.gmail.com" \\
  -e N8N_SMTP_PORT=465 \\
  -e N8N_SMTP_USER="[email protected]" \\
  -e N8N_SMTP_PASS="xwvz kanw dcwq pwlw" \\
  -e N8N_SMTP_SENDER="[email protected]" \\
  -e N8N_SMTP_SECURE="true" \\
  -e GENERIC_TIMEZONE="Asia/Seoul" \\
  -e N8N_LICENSE_ACTIVATION_KEY="182d36be-c372-4bfe-83da-68142058bb20" \\
  -e N8N_ADDITIONAL_NODE_MODULES="bcrypt,base64-url" \\
  -d n8n-custom

⚠️ 대안: 실행 중 컨테이너에 직접 설치 (비권장)

docker exec -it n8n /bin/bash
cd /home/node/.n8n
npm install bcrypt base64-url

🧩 N8N_ADDITIONAL_NODE_MODULES

변수 역할

이 환경 변수는 n8n에서 외부 모듈을 인식할 수 있게만 해주는 설정이며, 실제 패키지 설치는 하지 않습니다. 즉, 아래 설정만으로는 작동하지 않습니다: