Coolify แบบ Self-hosted: ทดลอง Deploy แอปแรกก่อนย้ายงานจริง
ตั้ง Coolify บนเซิร์ฟเวอร์ของตนเอง ทดสอบ Nginx container และตรวจภาระดูแลก่อนย้าย production
Coolify เป็นแพลตฟอร์มโอเพนซอร์สสำหรับ deploy และดูแลแอป ฐานข้อมูล และบริการบนเซิร์ฟเวอร์ของเราเอง มันช่วยจัดการงานสร้างคอนเทนเนอร์ การเชื่อม proxy และโดเมน แต่เจ้าของเครื่องยังต้องรับผิดชอบระบบปฏิบัติการ เครือข่าย พื้นที่เก็บข้อมูล และ backup บทความนี้สรุปขั้นตอนจาก คู่มือ self-hosted และ การ deploy แอปแรก
เตรียมเครื่องและขอบเขตการทดสอบ
เอกสารระบุขั้นต่ำสำหรับตัว Coolify ที่ 2 CPU, RAM 2 GB และพื้นที่ 10 GB แต่ทรัพยากรของแอปที่จะรันต้องคิดเพิ่มอีก ให้เตรียม Linux server ที่เข้าผ่าน SSH ได้ ตรวจ firewall และเลือกว่าจะใช้เครื่องใหม่หรือเครื่องที่มี Docker อยู่แล้ว เพราะตัวติดตั้งอัตโนมัติต้องมีสิทธิ์สูงและอาจปรับส่วนประกอบของ host หากเป็นเครื่องใช้งานจริง ควรอ่านวิธีติดตั้งแบบ manual และแผนคืนค่าก่อน
คำสั่งติดตั้งอัตโนมัติตามเอกสารคือ:
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
รันเฉพาะหลังตรวจแหล่งสคริปต์และรับทราบสิทธิ์ของมัน ติดตั้งเสร็จเปิด http://SERVER_IP:8000 แล้วสร้างบัญชี admin ทันที หน้า registration ที่เปิดทิ้งไว้ให้ผู้อื่นเข้าถึงได้เป็นความเสี่ยงสำคัญ จากนั้นสำรอง /data/coolify/source/.env เพราะมี secret ที่จำเป็นต่อการกู้คืน instance
ทดสอบระบบด้วยแอปที่ไม่มี build
ก่อนเชื่อม Git repository ให้สร้าง Project แล้วเลือก resource แบบ Docker Image ตั้ง image nginx:alpine และ Ports Exposes เป็น 80 จากนั้น deploy และเปิด URL ทดสอบที่ Coolify สร้างให้ ซึ่งมักเป็นโดเมน sslip.io แบบ HTTP หากเห็นหน้า Nginx แปลว่า server, Docker, proxy และ routing ขั้นพื้นฐานต่อกันได้แล้ว การใช้ image สำเร็จรูปช่วยแยกปัญหา infrastructure ออกจากปัญหา build ของแอป
หาก URL เปิดไม่ได้ ตรวจว่า server connected, proxy running, พอร์ตแอปตรงกับค่าที่ expose, firewall ไม่บล็อก และ deployment log ไม่รายงาน image pull ล้มเหลว เมื่อต้องการโดเมนจริง ให้ชี้ DNS ไป server และตั้ง URL เป็น HTTPS เพื่อให้ระบบขอใบรับรองตามที่เอกสารแนะนำ
ก่อนย้าย production
กำหนด health check, environment variables, persistent storage และแผน backup ให้แต่ละแอป โดยเฉพาะฐานข้อมูลต้องทดสอบ restore ไม่ใช่ดูเพียงว่าไฟล์ backup ถูกสร้างแล้ว แยก secret จาก repository, จำกัดการเข้าถึง dashboard และวางรอบอัปเดต Coolify/Docker/OS ไว้ล่วงหน้า หากแอปใช้ build-time variable ให้ตรวจว่าค่านั้นถูกส่งในช่วง build จริง ไม่ใช่แค่ runtime
Coolify เหมาะเมื่อทีมต้องการประสบการณ์ deploy คล้าย PaaS บนเครื่องที่ตนควบคุม แต่ความสะดวกใน dashboard ไม่แทนงานดูแล host เริ่มจากแอปตัวอย่างแล้วจึงย้ายบริการที่มี state เมื่อ backup และ monitoring พร้อม อ่าน เอกสารการ deploy แอป ประกอบ.