Aplikasi web pemantauan rute dan jadwal transportasi publik (Feeder Kota). Dibangun menggunakan React (Vite) dan Laravel 10/11, serta dirancang agar siap di-deploy ke Amazon ECS dengan integrasi AWS S3, CloudFront, dan RDS.
/frontend: Aplikasi React (SPA)./backend: API menggunakan Laravel.docker-compose.yml: Lingkungan pengembangan lokal.
- Docker & Docker Compose
- Node.js (hanya jika ingin menjalankan frontend tanpa docker di lokal)
- Salin
.env.examplemenjadi.envdi direktoribackenddan sesuaikan nilainya (kredensial database dll). - Salin
.env.examplemenjadi.envdi direktorifrontend(jika ada) dan arahkanVITE_API_URLkehttp://localhost:8000/api. - Jalankan container:
docker-compose up -d --build
- Akses aplikasi:
- Frontend: http://localhost:5173
- Backend API: http://localhost:8000
Proyek ini telah menyediakan file Dockerfile masing-masing untuk Frontend dan Backend yang dioptimalkan untuk di-deploy sebagai layanan Amazon ECS yang terpisah.
- Backend: Build dari
backend/Dockerfile. Pastikan environment variable AWS (RDS, S3, CloudFront) telah disetup di task definition ECS. - Frontend: Build dari
frontend/Dockerfileyang mana berupa static asset yang di-serve via Nginx.
Laravel telah dikonfigurasi untuk menggunakan S3 disk (menggunakan library league/flysystem-aws-s3-v3).
Gunakan key .env:
AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYAWS_DEFAULT_REGIONAWS_BUCKETAWS_URL=https://[YOUR_CLOUDFRONT_DOMAIN]
Untuk upload file ke S3, gunakan endpoint API POST /api/upload-photo yang telah disiapkan di Backend.