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 = 데이터 자동화 끝판왕 조합 완성입니다 💪