Starter Kit
Laravel Starter (Docker)
Laravel + Nginx + PHP-FPM + DB. Progetto Laravel dockerizzato con configurazione pronta per sviluppo e deploy, ideale per portali e gestionali.
Livello: IntermedioLaravelPHPNginxDockerMySQL
Cosa include
- Dockerfile
- Nginx config
- DB service
- Env sample
Documentazione rapida
Setup Docker per Laravel/Orchid con PHP-FPM + Nginx + MySQL + Node/Vite (senza installare nulla sul PC).
Passi
- Crea/usa la struttura: docker/nginx/default.conf e docker/php/php.ini (evita confusione tra docker/ e .docker/).
- Configura docker-compose.yml (app + nginx + mysql + node) e Dockerfile (php 8.2 + estensioni).
- Imposta il database nel .env (DB_HOST=mysql).
- Avvia lo stack con Docker Compose.
- Esegui composer + key + migrate + storage:link dentro al container PHP.
- Se la home non carica JS/CSS, verifica Vite/hot (public/hot) e forza HMR su localhost.
Comandi
docker compose up -d --build
docker compose exec app composer install
docker compose exec app php artisan key:generate
docker compose exec app php artisan migrate
docker compose exec app php artisan storage:link
docker compose exec app bash -lc "chown -R www-data:www-data storage bootstrap/cache && chmod -R 775 storage bootstrap/cache".env (sample)
DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3306
DB_DATABASE=orchid
DB_USERNAME=orchid
DB_PASSWORD=orchid_passTroubleshooting
- Nginx non parte e log dice: default.conf is a directory → monta ./docker/nginx su /etc/nginx/conf.d e assicurati che docker/nginx/default.conf sia un FILE.
- Home non carica asset e public/hot contiene http://[::]:5173 → configura Vite con host 0.0.0.0 e HMR host=localhost (così hot punta a localhost:5173).
