In dit artikel leg ik uit hoe je Larvel Sail kan opzetten zonder composer.
Omdat Laravel Sail gebruikt maakt van Docker moet je wel Docker(desktop) geïnstalleerd hebben.
Met 1 commando een nieuwe Laravel project installeren
Op mijn machines heb ik geen lokale composer geïnstalleerd dus kan ik Laravel niet via deze manier installeren maar wel via een Docker container.
Ga via de commandline naar een folder waar je het Laravel wilt installeren.
Voer daar het volgende commando uit:
docker run -it --rm -v $(pwd):/work -w /work -u 1000:1000 composer:latest create-project laravel/laravel=10.* --ignore-platform-reqs --no-scripts .
Composer packages
Na een nieuwe installatie moet je nog de composer packages installeren, aangezien we nog geen lokale composer en nog geen Docker container hebben voor composer in dit project, kan je ze wel installeren via het volgende commando:
docker run --rm \
-u "$(id -u):$(id -g)" \
-v $(pwd):/opt \
-w /opt \
laravelsail/php81-composer:latest \
composer install --ignore-platform-reqs
Andere PHP versie
php81 staat voor PHP 8.1 dus wil je bijvoorbeeld PHP 8.2 maak dan van php81 -> php82.
In de folder vendor/laravel/sail/runtimes kan je zien welke PHP versies beschikbaar zijn.
.env bestand aanmaken
Om laravel Sail te installeren heb je een .env bestand nodig, maak een kopie van .env.example:
cp .env.example .env
Laravel Sail installeren
Laravel Sail kan je installeren via php artisan sail:install
alleen kunnen we nog geen artisan commando’s uitvoeren omdat we dit project nog niet kunnen opstarten door de ontbrekende docker-compose.yml
file (wat php artisan sail:install
doet).
We kunnen dit weer doen met een docker commando:
docker run --rm \
-u "$(id -u):$(id -g)" \
-v $(pwd):/opt \
-w /opt \
laravelsail/php81-composer:latest \
php artisan sail:install
Laravel Sail project opstarten
Als het goed is kan je nu je Laravel Sail project opstarten via het volgende commando:
./vendor/bin/sail up -d
Tip, heb je nog geen alias voor Laravel Sail maak deze dan aan: https://laravel.com/docs/9.x/sail#configuring-a-shell-alias
Laravel Sail gebruiken in een bestaand project
Heb je een bestaand Laravel project waar Sail nog niet in staat, download dan eerst de Sail Composer package:
docker run --rm \
-u "$(id -u):$(id -g)" \
-v $(pwd):/opt \
-w /opt \
laravelsail/php81-composer:latest \
composer require laravel/sail --dev --ignore-platform-reqs