n8n에 Python 입히기! Docker Image로 요리하는 법

n8n에 Python 입히기! Docker Image로 요리하는 법
“불가능해 보이는 일도, 막상 해내고 나면 별것 아니다.” – 넬슨 만델라

“도커 컨테이너 속 n8n에서 Python 코드 쓰고 싶은데… 어떻게 해야 하지?”
에이~ 고민 마세요!
오늘은 n8n에 Python을 착착 입혀서,
진짜 자동화 요리사로 거듭나는 법!
그 레시피를 Docker와 함께 소개해드릴게요 😎


🐣 잠깐! Docker가 뭐냐구요?

도커(Docker)는요…
“내 개발환경을 그대로 통에 담아 옮길 수 있는 기술”이에요.
"뭔 소리야?" 하실 수도 있는데, 예를 들면 이래요👇

집에서 만들 땐 잘 되던 파이썬 코드가 회사 가면 안 돌아간다구요?
그건 환경이 다르기 때문이에요! 😱

그럴 때 도커를 쓰면,
“내 컴퓨터 환경 그대로를 작은 상자에 넣어서 어디서든 똑같이 실행”할 수 있어요!
이 상자를 ‘컨테이너’라고 부르는데요~
그 상자를 만들 때 필요한 설명서가 바로 Dockerfile이에요! 🧾


🧱 도커 기본 개념 한방 정리!

용어 예시 비유
Dockerfile 컨테이너 만드는 요리법 김치찌개 레시피
Image Dockerfile을 조리한 결과물 완성된 김치찌개
Container 이미지를 실제로 실행한 인스턴스 상에 올린 찌개 그릇
Build Dockerfile → Image로 만드는 과정 요리 중!

🍲 우리의 요리 레시피: n8n + Python Dockerfile

FROM n8nio/n8n
USER root
RUN apk update && apk add --no-cache \
    python3 py3-pip py3-virtualenv \
    gcc musl-dev libffi-dev openssl-dev python3-dev build-base \
 && ln -sf python3 /usr/bin/python
RUN pip install --break-system-packages --no-cache-dir \
    requests==2.31.0 pandas==2.2.1 numpy==1.26.4 tqdm==4.66.2
USER node

이 레시피, 하나하나 살펴볼까요?


🧑‍🍳 Dockerfile 해부 시작!

  • FROM n8nio/n8n
    → n8n이라는 자동화 플랫폼을 기반으로 시작해요.
    “나는 n8n에 Python만 살짝 넣고 싶다!”는 분들에게 딱이에요.
  • USER root
    → 설치하려면 집주인 권한이 필요하니까, 잠깐 root로 변신해요. 🦸‍♂️
  • RUN apk add ...
    → apk는 Alpine 리눅스에서 쓰는 패키지 관리자!
    Python과 pip, 그리고 pandas나 numpy 같은 패키지를 컴파일할 때 필요한 도구들도 한 번에 설치해요.
  • ln -sf python3 /usr/bin/python
    → python3만 있으니, 우리가 익숙한 python 명령도 쓸 수 있도록 링크 걸어줘요.
  • pip install ...
    → 드디어 필요한 Python 라이브러리들을 설치합니다!
    requests, pandas, numpy, tqdm 전부 자동화에 꿀템이죠!
  • USER node
    → 이제 다시 일반 사용자로 전환! 보안은 중요하니까요 🔒

🛠️ 그럼 이 Dockerfile, 어떻게 쓰나요?

자, Dockerfile 만들었으면 이제 이미지로 구워야겠죠?
바로 빌드(build) 단계 들어갑니다!

docker build -t my-n8n-python .
  • -t my-n8n-python → 나만의 이미지 이름!
  • . → 현재 폴더에 Dockerfile이 있다는 뜻!

그리고 나서 컨테이너 실행은 이렇게:

docker run -it --rm my-n8n-python

이제 이 컨테이너 안에서는
n8n도 잘 돌아가고, Python도 척척 쓸 수 있어요!
n8n에서 코드 노드 만들어서 import pandas as pd 해보세요~ 진짜 됩니다 😍


✅ 요약! 이 글을 통해 알게 되는 것들

  • n8n에서 Python 쓰고 싶을 땐, Docker로 환경 설정하면 끝!
  • Dockerfile은 환경을 요리하는 레시피 🍽️
  • Python에 필요한 패키지와 도구까지 싹 설치
  • 빌드 → 이미지 생성 → 컨테이너 실행! 그게 전부예요!

☕️ 도란도란 수다 마무리

처음엔 Dockerfile이 복잡해 보여도,
하나씩 뜯어보면 전~혀 어렵지 않아요!
요 글만 참고해서 따라 하면,
n8n + Python = 데이터 자동화 끝판왕 조합 완성입니다 💪