อัปเดต n8n เป็นเวอร์ชันใหม่ อย่างปลอดภัย
วิธีอัปเดต n8n บน Docker, Docker Compose, และ npm ให้ปลอดภัย พร้อม checklist ก่อน-หลัง update และวิธี rollback
n8n ออก update บ่อยมาก บางเดือนมีหลาย release ซึ่งมาพร้อมฟีเจอร์ใหม่ bug fix และการแก้ไขด้านความปลอดภัย การอัปเดตอย่างสม่ำเสมอจึงสำคัญ แต่ต้องทำอย่างระมัดระวัง
สิ่งที่อันตรายที่สุดในการ update n8n คือ breaking changes ที่อาจทำให้ workflow หยุดทำงาน หรือ database migration ที่ไม่สำเร็จ บทความนี้จะพาคุณ update อย่างปลอดภัย
Checklist ก่อน Update ทุกครั้ง
อย่าข้ามขั้นตอนเหล่านี้ โดยเฉพาะเมื่อ update ข้าม major version:
- Backup ข้อมูลล่าสุด — ดูวิธีที่ Backup และ Restore Workflow n8n
- อ่าน Changelog — ที่ github.com/n8n-io/n8n/releases
- ตรวจหา Breaking Changes — ค้นหาคำว่า “breaking” ใน changelog
- เลือกช่วงเวลาที่ traffic น้อย — เพราะ n8n จะ downtime ระหว่าง update สักครู่
ดูเวอร์ชันปัจจุบัน
ก่อน update ควรรู้ก่อนว่าตอนนี้ใช้ version อะไรอยู่:
# สำหรับ Docker
docker exec n8n n8n --version
# หรือดูจาก Docker image tag
docker inspect n8n | grep Image
อัปเดต n8n บน Docker (Single Container)
# 1. ดึง image ล่าสุด
docker pull n8nio/n8n:latest
# 2. หยุด container เก่า
docker stop n8n
# 3. ลบ container เก่า (ข้อมูลยังอยู่ใน volume)
docker rm n8n
# 4. รัน container ใหม่ด้วย image ล่าสุด
docker run -d \
--name n8n \
--restart unless-stopped \
-p 5678:5678 \
-v ~/.n8n:/home/node/.n8n \
-e N8N_ENCRYPTION_KEY=your-key \
n8nio/n8n:latest
# 5. ดู log เพื่อตรวจสอบ database migration
docker logs n8n -f
รอสักครู่ให้ n8n รัน database migration เสร็จ จะเห็น log ว่า n8n ready on 0.0.0.0, port 5678
อัปเดต n8n บน Docker Compose (แนะนำ)
วิธีนี้ง่ายและปลอดภัยกว่า เพราะ Docker Compose จัดการทุกอย่างให้:
# 1. ดึง image ใหม่ทุก service
docker compose pull
# 2. Recreate container ด้วย image ใหม่
docker compose up -d
# 3. ตรวจสอบ log
docker compose logs -f n8n
ถ้าต้องการ update เป็น version เฉพาะ (ไม่ใช่ latest) ให้แก้ docker-compose.yml:
services:
n8n:
image: n8nio/n8n:1.45.0 # ระบุ version ชัดเจน
อัปเดต n8n ที่ติดตั้งด้วย npm
# Update เป็น latest
npm update -g n8n
# หรือระบุ version
npm install -g n8n@1.45.0
# Restart n8n process (ขึ้นกับวิธีรัน)
pm2 restart n8n # ถ้าใช้ pm2
อัปเดต n8n บน Railway / Render / Fly.io
สำหรับ platform-as-a-service:
- ไปที่ dashboard ของ platform
- ไปที่ Settings ของ service n8n
- เปลี่ยน image tag จาก
latestเป็น version ใหม่ หรือ trigger redeploy - Platform จะ pull image ใหม่และ restart อัตโนมัติ
Update เป็น Version เฉพาะ (Pinned Version)
การใช้ latest tag มีความเสี่ยงเพราะ image จะเปลี่ยนโดยไม่แจ้ง แนะนำให้ pin version:
# ดู tag ที่มีทั้งหมด
# https://hub.docker.com/r/n8nio/n8n/tags
docker pull n8nio/n8n:1.45.0
แล้วค่อยๆ upgrade ทีละ minor version เพื่อให้ migration ทำงานถูกต้อง
วิธี Rollback เมื่อ Update แล้วมีปัญหา
ถ้า update แล้ว workflow เสียหรือ n8n ไม่ทำงาน:
กรณีใช้ Docker (มี backup)
# หยุด container ใหม่
docker stop n8n && docker rm n8n
# Restore backup ก่อน update
# ดูวิธีละเอียดที่ /blog/n8n-backup-restore
# รัน container version เก่า
docker run -d \
--name n8n \
--restart unless-stopped \
-p 5678:5678 \
-v ~/.n8n:/home/node/.n8n \
n8nio/n8n:1.44.0 # version ก่อน update
กรณีไม่มี backup
ไม่มีทางกลับ — นี่คือเหตุผลที่ต้อง backup ก่อนทุกครั้ง
ตรวจสอบหลัง Update
หลัง update สำเร็จ ทดสอบสิ่งเหล่านี้:
- Login เข้าได้ — ลอง login ด้วย credential เดิม
- Workflow ยังอยู่ — ตรวจว่า workflow ทั้งหมดยังแสดงอยู่
- Credential ยังใช้ได้ — ลองเปิด workflow ที่มี credential แล้วตรวจสอบ
- Webhook ยังทำงาน — ส่ง test request ไปที่ webhook URL
- Cron trigger ยังทำงาน — ตรวจสอบ execution history ในวันต่อมา
ตั้งค่า Auto-Update (ไม่แนะนำสำหรับ Production)
ถ้าต้องการ auto-update บน development environment สามารถใช้ Watchtower:
docker run -d \
--name watchtower \
-v /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower \
--interval 86400 \
n8n
คำเตือน: ไม่แนะนำสำหรับ production เพราะอาจ update โดยไม่ได้ตรวจ breaking changes ก่อน
อยากเรียน n8n แบบเป็นระบบ ตั้งแต่เริ่มต้นจนสร้าง Workflow ใช้งานจริงได้ ลองดู คอร์สสอน n8n ที่ aiunlock.co
Related posts
Backup และ Restore Workflow n8n ทำยังไง?
วิธี backup และ restore workflow, credential, และข้อมูล n8n อย่างถูกต้อง ไม่ให้ข้อมูลสูญหายเมื่อเกิดปัญหา
ติดตั้ง n8n ด้วย Docker แบบละเอียด
คู่มือ step-by-step ติดตั้ง n8n ด้วย Docker และ Docker Compose บน Windows, Mac, Linux พร้อม persistent data
Deploy n8n บน Railway ฟรี ภายใน 5 นาที
วิธี deploy n8n บน Railway แบบ step-by-step ไม่ต้องมีเซิร์ฟเวอร์ ฟรีสำหรับ hobby project พร้อมใช้งานได้ทันที