π n8nμ΄λ?
n8n(μμ΄νΈμ)μ μ€νμμ€ μν¬νλ‘μ° μλν ν΄λ‘, 200κ° μ΄μμ μλΉμ€(Google Sheets, Slack, Telegram λ±)λ₯Ό μ°κ²°ν΄ 볡μ‘ν μμ
μ μλνν©λλ€.
β
μ½λλ¦¬μ€ μΈν°νμ΄μ€
β
μ체 νΈμ€ν
κ°λ₯
β
νμ₯μ± λμ λ
Έλ κΈ°λ° κ΅¬μ‘°
π₯ “If This Then That(IFTTT)”μ μ
λ¬΄μ© κ°ννμ΄λΌκ³ μκ°νμΈμ!
π³ Docker Composeλ‘ μ€μΉνλ μ΄μ
μ₯μ | μ€λͺ |
---|---|
κ°νΈμ± | 볡μ‘ν μμ‘΄μ± μμ΄ 1κ° νμΌλ‘ μ€μ μλ£! |
μΌκ΄μ± | κ°λ°/ν μ€νΈ/μ΄μ νκ²½ λμΌμ± 보μ₯ |
νμ₯μ± | PostgreSQL, Redis λ± μΆκ° μλΉμ€ μ°λ μ©μ΄ |
κ΄λ¦¬ ν¨μ¨ | docker-compose λͺ
λ Ήμ΄λ‘ ν΅ν© κ΄λ¦¬ |
βοΈ μ¬μ μ€λΉ
- Docker μ€μΉ
곡μ λ¬Έμ μ°Έκ³sudo apt update && sudo apt install docker.io docker-compose
- λλ ν 리 μμ±
mkdir n8n-docker && cd n8n-docker
π οΈ docker-compose.yml μμ± (κΈ°λ³ΈνΈ)
version: '3.8'
services:
n8n:
image: n8nio/n8n
restart: always
ports:
- "5678:5678" # μΉ μΈν°νμ΄μ€ ν¬νΈ
environment:
- N8N_BASIC_AUTH_ACTIVE=true
- N8N_BASIC_AUTH_USER=admin # π μ¬μ©μλͺ
- N8N_BASIC_AUTH_PASSWORD=securepassword123! # π λΉλ°λ²νΈ
volumes:
- n8n_data:/home/node/.n8n # λ°μ΄ν° μ§μμ± λ³΄μ₯
networks:
- n8n_network
volumes:
n8n_data: # λ³Όλ₯¨ μμ±
networks:
n8n_network:
π₯ κ³ κΈ μ€μ (DB + HTTPS)
version: '3.8'
services:
postgres:
image: postgres:13
environment:
POSTGRES_USER: n8n_user
POSTGRES_PASSWORD: db_password123!
POSTGRES_DB: n8n_db
volumes:
- pg_data:/var/lib/postgresql/data
n8n:
image: n8nio/n8n
depends_on:
- postgres
environment:
DB_TYPE: postgresdb
DB_POSTGRESDB_DATABASE: n8n_db
DB_POSTGRESDB_USER: n8n_user
DB_POSTGRESDB_PASSWORD: db_password123!
DB_POSTGRESDB_HOST: postgres
N8N_HOST: yourdomain.com # π λλ©μΈ μ€μ
N8N_PROTOCOL: https # π HTTPS κ°μ μ μ©
VUE_APP_URL_BASE_API: https://yourdomain.com/
volumes:
- n8n_data:/home/node/.n8n
ports:
- "443:5678" # HTTPS νμ€ ν¬νΈ λ§€ν
volumes:
n8n_data:
pg_data:
# π‘ Tip: Nginx μλ°©ν₯ νλ‘μ μΆκ° μ 보μ κ°ν κ°λ₯!
π μ€ν λ° μ€μ§ λͺ λ Ήμ΄
# μμ
docker-compose up -d
# μν νμΈ
docker-compose ps
# λ‘κ·Έ 보기
docker-compose logs -f n8n
# μ€μ§ (λ°μ΄ν° 보쑴)
docker-compose down
π μ΄κΈ° μ€μ κ°μ΄λ
- μ μ μ£Όμ:
http://μλ²IP:5678
- μν¬νλ‘μ° μμ±
- β
Add Node
λ‘ νΈλ¦¬κ±°(μμμ ) μ€μ - π λ Έλ μ°κ²°ν΄ μλν νλ¦ κ΅¬μ±
- μμ: Gmail μμ β Slack μλ¦Ό μ μ‘
- β
- ν¬λ λ΄μ
μ μ₯
π ν΅ν© μλΉμ€ API ν€λ₯Ό μμ νκ² κ΄λ¦¬!
β οΈ μ£Όμμ¬ν & μ΅μ ν ν
- 보μ κ°ν
- κΈ°λ³Έ μΈμ¦ νμ (
N8N_BASIC_AUTH_ACTIVE=true
) N8N_ENCRYPTION_KEY
μ€μ μΌλ‘ λ―Όκ° λ°μ΄ν° μνΈν
- κΈ°λ³Έ μΈμ¦ νμ (
- λ°±μ
μ λ΅
# λ³Όλ₯¨ λ°μ΄ν° λ°±μ docker run --rm -v n8n_data:/source -v $(pwd):/backup busybox tar cvf /backup/n8n_backup.tar /source
- 리μμ€ μ ν
# docker-compose.yml μΆκ° deploy: resources: limits: cpus: '1.0' memory: 2G
π― λ§λ¬΄λ¦¬
> “n8n + Docker Compose = 무ν μλν κ°λ₯μ±”
π λΉμ¦λμ€ ν¨μ¨μ± 200% ν₯μ
π‘ μμ© ν΄ λλΉ λΉμ© μ κ° (μ체 νΈμ€ν
무λ£!)
π§ μ μ°ν 컀μ€ν°λ§μ΄μ§ κ°λ₯
μ€λ ꡬμ±ν μΈνλΌλ‘ λ§€μΌ λ°λ³΅λλ μ
무λ₯Ό μλνν΄λ³΄μΈμ.
첫 μν¬νλ‘μ° μ€ν μ±κ³΅ μ μ¬λ¬λΆμ μκ°μ μ΄λ―Έ μ μ½λκ³ μμ΅λλ€!
> β¨ μΆμ² λ€μ λ¨κ³:
> – 곡μ λ¬Έμμμ κ³ κΈ λ
Έλ νμ΅
> – GitHub μ°λμΌλ‘ μ½λ νΈμ μ μλ¦Ό μ€μ
> – μΌμΌ 리ν¬νΈ μλ μμ± μν¬νλ‘μ° κ΅¬ν
λ¬Έμμ¬νμ λκΈλ‘ λ¨κ²¨μ£ΌμΈμ. ν¨κ» μ±μ₯νλ IT μΈνλΌ λκΈΈ! π D