ตัวอย่างโครงสร้างไฟล์ docker-compose.yml
YAML
services:
backend:
image: ghcr.io/smlsoft/smllinecrm-backend:latest
labels:
- traefik.enable=true
- traefik.http.routers.smllinecrm-api.rule=Host(`linecrm-api.domain.com`)
- traefik.http.services.smllinecrm-api.loadbalancer.server.port=3001
networks: [root_default]
admin:
image: ghcr.io/smlsoft/smllinecrm-admin:latest
labels:
- traefik.http.routers.smllinecrm.rule=Host(`linecrm.domain.com`)
- traefik.http.services.smllinecrm.loadbalancer.server.port=3000
networks: [root_default]
networks:
root_default: { external: true }
ขั้นตอนการเริ่มรันระบบ
- สั่งรันระบบ: เปิด Terminal ในโฟลเดอร์ที่มีไฟล์นี้อยู่ แล้วพิมพ์คำสั่ง:
docker compose pull && docker compose up -d
2. ตรวจสอบสถานะ: พิมพ์คำสั่ง docker compose ps เพื่อดูว่าบริการทั้งสองตัวทำงานปกติหรือไม่
3. ตรวจเช็คการเชื่อมต่อฐานข้อมูล: พิมพ์คำสั่งดู Logs ของระบบหลังบ้าน:
docker compose logs backend --tail=20
มองหาบรรทัดที่เขียนว่า [DB] MongoDB connected หากเจอแสดงว่าระบบเชื่อมต่อฐานข้อมูลสำเร็จแล้ว
⛔ กฎเหล็กด้านความปลอดภัย: ไฟล์ docker-compose.yml หรือไฟล์ .env ที่ระบุค่า API Key, JWT Secret และ MongoDB URI ส่วนตัวของคุณ จะต้องเก็บไว้บนเซิร์ฟเวอร์ใช้งานจริงเท่านั้น ห้ามอัปโหลดหรือ Commit ไฟล์เหล่านี้ขึ้นระบบ Git สาธารณะ (เช่น GitHub) โดยเด็ดขาด เพื่อป้องกันไม่ให้ข้อมูลความลับของธุรกิจรั่วไหล
