ใน OrbStack (ซึ่งเป็น Docker Desktop alternative สำหรับ macOS) ไม่มีฟีเจอร์ในตัวที่ให้เลือก container เฉพาะตัวแล้วตั้งค่าให้ run อัตโนมัติทุกครั้งที่ OrbStack เริ่มทำงาน (หรือตอนเครื่องบูต) แบบตรง ๆ เหมือนใน Docker Desktop บางเวอร์ชัน แต่มีวิธีทำให้ container ทำงานอัตโนมัติเมื่อเครื่องเริ่มทำงาน (หรือเมื่อ OrbStack เริ่ม) ได้ดังนี้
วิธีที่คนใช้กันเยอะที่สุด (แนะนำสำหรับคนส่วนใหญ่)
ใช้ restart policy ของ Docker ธรรมดา + ทำให้ OrbStack เปิดอัตโนมัติตอนเครื่องบูต
ขั้นตอน
- รัน container ด้วย –restart=unless-stopped (หรือ always)
หรือถ้าใช้ docker-compose.yml:docker run -d --restart=unless-stopped \ -p 8080:80 \ --name my-app \ nginx
หรือ
services: app: image: nginx restart: unless-stopped ports: - "8080:80"
- ไปที่ System Settings > General > Login Items (หรือ Users & Groups > Login Items ใน macOS รุ่นเก่า)
- เพิ่ม OrbStack เข้าไป (ลากแอป OrbStack มาวาง หรือกด + แล้วเลือก)
- วิธีนี้ทำให้ OrbStack เปิดอัตโนมัติทุกครั้งที่ login
- ถ้าต้องการให้เครื่อง auto login (สำหรับ server หรือ headless)
- System Settings > Users & Groups > เปิด Automatic login สำหรับ user ของคุณ
เมื่อเครื่องบูต → macOS login อัตโนมัติ → OrbStack เปิด → Docker engine เริ่ม → container ที่มี restart policy จะถูกเริ่มอัตโนมัติทันที
หมายเหตุ: --restart=unless-stopped จะเริ่ม container ใหม่ทุกครั้งที่ Docker engine เริ่ม (ยกเว้นกรณีที่คุณ stop ด้วยมือแล้วเครื่อง shutdown)
ถ้าใช้ docker compose project เยอะ
หลายคนใช้ docker compose up -d ใน script แล้วใส่ใน Launch Agent หรือ cron @reboot แต่ยุ่งยากกว่า หรือใช้เครื่องมือเสริม เช่น
- Orb CLI + script ใน ~/Library/LaunchAgents
- แต่ส่วนใหญ่แนะนำวิธี 1 ง่ายสุด
สรุปสั้น ๆ
วิธีทำ OrbStack + container run on start (ตอนเครื่องบูต)
- ตั้งค่า container ด้วย
--restart=unless-stopped - เพิ่ม OrbStack เข้า Login Items ใน System Settings
- (optional) เปิด Automatic login ถ้าเป็น server
ถ้าต้องการควบคุมเยอะกว่านี้ (เช่น เลือกเฉพาะบาง container) ปัจจุบัน (2026) ยังต้องพึ่ง restart policy + การเปิด OrbStack อัตโนมัติ ไม่มี toggle ใน GUI ให้เลือก per-container แบบชัดเจน
ถ้ามีปัญหาเรื่อง random container เริ่มทำงานตอนเปิด OrbStack (บางคนเจอ) ลองดู issue บน GitHub ของ OrbStack แล้วลอง docker update --restart=no <container> ตัวที่ไม่อยากให้เริ่ม หรือหยุดก่อนแล้วค่อยตั้งค่าใหม่
อ่านเพิ่มเติม