Dokumen ini berisi panduan operasional lengkap untuk menjalankan proyek ConnectX menggunakan infrastruktur Docker di lingkungan Windows dengan WSL 2.
Pastikan komponen berikut sudah siap di komputer Anda:
- Docker Desktop for Windows: Pastikan "WSL 2 based engine" tercentang di Settings.
- WSL 2 (Ubuntu): Pastikan distro Linux Anda terdaftar di Docker Desktop (Settings > Resources > WSL Integration).
- VS Code + Remote Development Extension: Sangat disarankan untuk mengedit file langsung dari dalam WSL (
\\wsl$\...) untuk performa terbaik.
Jalankan perintah ini di PowerShell pada root proyek:
wsl docker compose up -d --buildGunakan wsl di awal jika Anda menjalankan dari PowerShell/CMD.
Setelah container berjalan, jalankan ketiga perintah ini untuk sinkronisasi database dan library:
# 1. Sinkronisasi Library PHP
wsl docker exec -it getconnectx-app composer update
# 2. Generate App Key (Jika belum ada di .env)
wsl docker exec -it getconnectx-app php artisan key:generate
# 3. Migrasi Database
wsl docker exec -it getconnectx-app php artisan migrate| Layanan | URL / Alamat |
|---|---|
| Aplikasi (Nginx) | http://localhost |
| Mailpit (Cek Email) | http://localhost:8025 |
| Database (PostgreSQL) | localhost:5432 |
| User/Pass DB | Ada di file .env (Default: postgres/getconnectx2026) |
- Stop:
wsl docker compose stop - Start (Tanpa Rebuild):
wsl docker compose start - Matikan & Hapus:
wsl docker compose down - Restart:
wsl docker compose restart
Jika ingin menjalankan perintah artisan atau composer lainnya:
wsl docker exec -it getconnectx-app bashDi dalam bash tersebut, Anda bisa langsung mengetik php artisan ... tanpa perlu wsl docker exec lagi.
Aplikasi ini sudah menggunakan Laravel 11 API Scaffolding.
- Base URL:
http://localhost/api/v1 - POST
/auth/register: Daftar akun baru.
- POST
/auth/login/otp/send: Kirim OTP ke email (Body:email). - POST
/auth/login/otp/verify: Verifikasi OTP & dapatkan Token (Body:email,otp_code).
- GET
/auth/email/send-otp: Dapatkan OTP email (Gunakan Bearer Token). - GET
/api/user: Contoh ambil data user (Gunakan Bearer Token).
Windows menggunakan \r\n sedangkan Linux (Docker) menggunakan \n. Jika Anda mendapat error bash: ...: command not found, pastikan file config (.env, Dockerfile, docker-compose.yml) menggunakan format LF.
- Fix via WSL:
wsl dos2unix <nama_file>
Jika folder di dalam Docker terlihat kosong, pastikan path di docker-compose.yml menggunakan path absolut WSL:
volumes:
- /mnt/d/CODEVITS/Getconnectx.app:/var/wwwJika saat git pull muncul error ini, gunakan flag:
git pull origin develop --allow-unrelated-historiesAtau jika terlalu banyak konflik, lakukan Selective Checkout seperti yang kita lakukan sebelumnya.
Saat ini proyek dikonfigurasi menggunakan PHP 8.2-FPM. Jika ingin mengganti versi:
- Ubah
FROM php:X.X-fpmdi fileDockerfile. - Hapus container lama:
wsl docker compose down. - Build ulang:
wsl docker compose up -d --build.