Table des matières

Laravel

Ancienne page Laravel avant la version 12, mais avec plein de packages ;-)

Installation

Version 1

Plusieurs façons d'installer Laravel:

Ou “à la mano” :

composer create-project "laravel/laravel" mon-projet
cd mon-projet
composer update
npm install

Pour continuer avec sail pour dockeriser les services web, db, redis,…

composer require laravel/sail --dev
./artisan sail:install
./artisan sail:publish
ln -s ./vendor/bin/sail ./sail

Adapter le .env pour sélectionner les services db, session, queue, cache ainsi que le mapping de ports pour docker pour éviter les conflits: APP_PORT, FORWARD_DB_PORT

./sail up -d

Version 2

## Install with sail

```bash
# curl -s "https://laravel.build/<project name>?with=mariadb,redis,selenium,mailpit&devcontainer" | bash

curl -s "https://laravel.build/mon-projet-app?with=mariadb,redis" | bash

latest: Pulling from laravelsail/php84-composer
Digest: sha256:a2716e93e577c80bca7551126056446c1e06cb141af652ee6932537158108400
Status: Image is up to date for laravelsail/php84-composer:latest
   WARN  TTY mode requires /dev/tty to be read/writable.

    Creating a "laravel/laravel" project at "./financial-stocks-market-app"
    Installing laravel/laravel (v12.9.0)
    ...
```

## edit .env

pour éviter conflit avec serveurs locaux, droits utilisateurs...

WWWGROUP=1001
WWWUSER=1001
APP_PORT=3000
FORWARD_DB_PORT=3308

DB_DATABASE=financial-stocks-market
DB_USERNAME=root
DB_PASSWORD=root

SESSION_DRIVER=redis
CACHE_STORE=redis

## util

ln -s vendor/bin/sail ./sail

## Config docker

Pour modifier la config docker

```
./sail up -d
./sail artisan sail:publish
./sail down
```

## Activer supervisord dans docker/8.4/supervisord.conf

[program:horizon]
command=/usr/bin/php /var/www/html/artisan horizon
autostart=true
autorestart=true
user=sail
redirect_stderr=true
stdout_logfile=/var/www/html/storage/logs/horizon.log
stopwaitsecs=360

## Reconstruire les containers dockers et relancer sail

./sail build
./sail up -d

## Horizon to view queue workers

./sail composer require laravel/horizon
./sail artisan horizon:install

## debugbar

./sail composer require barryvdh/laravel-debugbar --dev

## filament

./sail composer require filament/filament:"^4.0" --update-with-all-dependencies
./sail artisan filament:install --panels

## create database tables

./sail artisan migrate:fresh

## filamanent user

./sail artisan make:filament-user --name="SuperMan" --email="superman@internet.eu" --password="secret123"

## javascript stuff

./sail npm install
./sail npm run build

## Yeah!

- http://localhost:3000/
- http://localhost:3000/admin

Autres starter-kits