Tutorial step-by-step ini menjelaskan cara menginstal Laravel versi terbaru (Laravel 11, 2026) dengan stack modern termasuk Vite, Breeze, Laravel Sanctum, serta konfigurasi Docker untuk lingkungan pengembangan yang konsisten.
1. Prerequisite
- PHP >= 8.3
- Composer 2.x
- Node.js >= 20 (npm atau Yarn)
- Docker & Docker Compose (opsional tetapi direkomendasikan)
- Git
2. Instalasi Laravel 11 dengan Composer
composer create-project laravel/laravel my-app "11.*"
Perintah di atas mengunduh Laravel 11 terbaru dan menyiapkan struktur folder standar.
3. Konfigurasi Vite sebagai Asset Bundler
Laravel 11 sudah menyertakan Vite secara default, namun pastikan dependensi terinstall:
cd my-app
npm install
Jika ingin menambahkan React atau Vue, jalankan:
npm install vue@next
# atau
npm install react@18 react-dom@18
3.1. Update vite.config.js
import { defineConfig } from 'vite';
import laravel from 'laravel-vite-plugin';
export default defineConfig({
plugins: [
laravel({
input: ['resources/css/app.css', 'resources/js/app.js'],
refresh: true,
}),
],
});
4. Instalasi Laravel Breeze (authentication starter kit)
composer require laravel/breeze --dev
php artisan breeze:install vue
npm run dev
php artisan migrate
Perintah di atas menginstal Breeze dengan scaffolding Vue (bisa diganti blade, react, atau inertia).
5. Menambahkan Laravel Sanctum untuk API Authentication
composer require laravel/sanctum
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate
Aktifkan middleware Sanctum di app/Http/Kernel.php:
'api' => [
\Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
'throttle:api',
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
5.1. Contoh Route API yang dilindungi
Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
return $request->user();
});
6. Docker Compose untuk Lingkungan Konsisten
Buat file docker-compose.yml di root projek:
version: '3.8'
services:
app:
image: php:8.3-fpm-alpine
container_name: laravel_app
working_dir: /var/www/html
volumes:
- ./:/var/www/html
depends_on:
- db
environment:
- APP_ENV=local
- DB_HOST=db
- DB_DATABASE=laravel
- DB_USERNAME=laravel
- DB_PASSWORD=secret
web:
image: nginx:alpine
container_name: laravel_web
ports:
- "8080:80"
volumes:
- ./:/var/www/html
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf
depends_on:
- app
db:
image: mysql:8.0
container_name: laravel_db
environment:
MYSQL_ROOT_PASSWORD: secret
MYSQL_DATABASE: laravel
MYSQL_USER: laravel
MYSQL_PASSWORD: secret
volumes:
- dbdata:/var/lib/mysql
volumes:
dbdata:
Jalankan:
docker compose up -d
Sesuaikan .env dengan kredensial Docker di atas, lalu jalankan migrasi:
docker exec -it laravel_app php artisan migrate
7. Best Practice Modern
- Envoyer/CI: Simpan variabel lingkungan di
.env.exampledan gunakan GitHub Actions untuk testing. - Testing: Laravel 11 menyediakan PHPUnit 10, gunakan
php artisan testsetiap commit. - Static Analysis: Tambahkan
phpstandanlarastanuntuk analisis kode. - Code Style: Gunakan
Laravel Pintuntuk format otomatis. - Cache Config: Jalankan
php artisan config:cachedanphp artisan route:cachesebelum produksi.
8. Verifikasi Instalasi
# Frontend
npm run dev # lihat di http://localhost:5173
# Backend via Docker
curl http://localhost:8080/api/user -H "Authorization: Bearer "
Jika semua langkah berhasil, Anda sudah memiliki stack Laravel 11 terbaru dengan Vite, Breeze, Sanctum, dan Docker siap untuk pengembangan.
Dengan mengikuti tutorial ini, developer dapat memulai proyek Laravel 11 yang modern, terstruktur, dan siap produksi. Menggunakan Vite meningkatkan kecepatan front‑end, Breeze menyediakan scaffolding autentikasi cepat, Sanctum memudahkan API token, sementara Docker menjamin lingkungan yang konsisten di seluruh tim.
Tutorial step-by-step setup Laravel 11 dengan Vite, Breeze, Sanctum, dan Docker. Panduan lengkap instalasi, konfigurasi, contoh kode, dan best practice modern untuk PHP Framework dan Web Development.
Laravel,PHP Framework,Web Development
#Laravel #LaravelIndonesia #PHP #WebDev #Backend
Tidak ada komentar:
Posting Komentar