Laravel Sail:Docker Development Environment

 Laravel Sail คืออะไร

Laravel Sail คือ Docker Development Environment แบบ Official ของ Laravel ที่ช่วยให้รันโปรเจกต์ Laravel ได้โดยไม่ต้องติดตั้ง PHP, MySQL, Redis หรือ Node.js ลงเครื่องโดยตรง

Sail ใช้ Docker และ Docker Compose จัดการทุก Service ให้พร้อมใช้งาน


จุดเด่นของ Laravel Sail

Feature

รายละเอียด

Containerized

ทุกอย่างรันใน Docker

Easy Setup

เริ่มโปรเจกต์เร็ว

Multi-Service

รองรับ MySQL, Redis, Mailpit

Consistent Environment

Dev ทุกคนใช้ Environment เดียวกัน

No Local PHP Required

ไม่ต้องลง PHP บนเครื่อง

Official Support

ทีม Laravel ดูแล


Service ที่นิยมใช้ร่วมกับ Sail

Service

ใช้งาน

MySQL

Database

PostgreSQL

Database

Redis

Cache / Queue

Mailpit

Testing Email

Meilisearch

Search Engine

Selenium

Browser Testing

MinIO

S3-compatible Storage


โครงสร้างหลัก

เมื่อใช้ Sail จะมีไฟล์สำคัญ

docker-compose.yml

หรือ Laravel เวอร์ชันใหม่

compose.yaml

ใช้ควบคุม Container ทั้งหมด


ติดตั้ง Laravel Sail

สร้าง Project ใหม่

curl -s "https://laravel.build/example-app" | bash

เข้า Project

cd example-app

รัน Sail

./vendor/bin/sail up


รันแบบ Background

./vendor/bin/sail up -d


เข้าใช้งาน Laravel

เปิด

http://localhost


คำสั่งพื้นฐาน Sail

Command

ใช้ทำอะไร

sail up

เปิด Container

sail down

ปิด Container

sail restart

Restart

sail artisan

รัน Artisan

sail composer

รัน Composer

sail npm run dev

รัน Vite

sail test

Run Tests


ตัวอย่างใช้งาน

Artisan

./vendor/bin/sail artisan migrate

Composer

./vendor/bin/sail composer require livewire/livewire

NPM

./vendor/bin/sail npm install


Alias ให้สั้นลง

Linux / macOS

alias sail='sh $([ -f sail ] && echo sail || echo vendor/bin/sail)'

ใช้งาน

sail up


Stack ที่นิยมใช้กับ Sail

Laravel + MySQL + Redis

เหมาะกับ Web App ทั่วไป

Laravel + PostgreSQL

เหมาะกับ Enterprise / Analytics

Laravel + Meilisearch

ทำ Full-text Search

Laravel + Selenium

Automated Browser Testing


ข้อดีเมื่อเทียบกับ XAMPP

Sail

XAMPP

แยก Environment

ใช้ร่วมทั้งเครื่อง

รองรับหลาย PHP Version

จำกัด

Production-like

ใกล้ Production

Portable

ย้ายเครื่องง่าย

Modern Stack

Legacy Stack


เหมาะกับใคร

  • Laravel Developer
  • Team Development
  • DevOps Workflow
  • CI/CD Environment
  • Microservices Development
  • คนที่ต้องใช้หลาย PHP Version


ข้อควรรู้

เรื่อง

รายละเอียด

ใช้ RAM มากกว่า XAMPP

Docker ใช้ Resource เพิ่ม

ต้องติดตั้ง Docker ก่อน

จำเป็น

Windows ควรใช้ WSL2

Performance ดีกว่า

ครั้งแรกโหลด Image นาน

ปกติ


Official Docs

  • Laravel Sail Documentation
  • Docker Official Website
  • Laravel Official Website

ความคิดเห็น