Laravel Boilerplate auf Windows Entwicklungsumgebung
Laravel-Boilerplate unter Windows aufsetzen: Composer, SQLite, php artisan, Auth-Framework, Log-Reader, Task-Scheduler, Voyager-Adminpanel und Zammad-API.
Voraussetzungen
composer --version sollte über 2 sein, andernfalls upgraden. Download Composer.
sqlite3 --version sollte über 3.35 sein andernfalls upgraden. Download and install.
Hier nutze ich SQLite als schlanke Datenbank. Magst Du lieber MySQL, dann hilft Dir mein Beitrag, MySQL lokal auf Docker zu betreiben. Wer statt Laravel eine lokale Entwicklungsumgebung mit XAMPP bevorzugt, findet dort den passenden Einstieg.
Installation
Führe die Schritte einzeln aus (bearbeite zuerst den Projektnamen):
set PROJECTNAME=laravel_boilerplate
mkdir C:\Users\herwa\Development\Laravel
cd C:\Users\herwa\Development\Laravel
composer create-project --prefer-dist laravel/laravel %PROJECTNAME%
cd %PROJECTNAME%
# Erzeuge eine leere sqlite Datenbank
sqlite3 database\database.sqlite "VACUUM;"
# Lösche die aktuelle Datenbank Konfiguration aus der .env Datei
sed -i '/^DB_/d' .env
# put our own DB config at the end
echo DB_CONNECTION=sqlite >> .env
echo DB_DATABASE=C:\Users\herwa\Development\Laravel\%PROJECTNAME%\database\database.sqlite >> .env
# Migriere die Datenbank
php artisan migrate
Testen
Starte nun einfach in Deinem Projektverzeichnis den eingebauten Server
php artisan serve
Nun kannst Du mit Deinem Webbrowser mit der URL http://localhost:8000/ auf Dein Projekt zugreifen.
In die index() Funktion des Home Controllers app\Http\Controllers\HomeController.php kannst Du nun deinen Code ausprobieren. (Nicht vergessen: Mittels dd bzw dump kannst Du Inhalte von Variablen ausgeben)
Nächste Komponenten
User Login und registrieren mittels „Auth Framework“
# auth framework
composer require laravel/ui
php artisan ui bootstrap --auth
npm install
npm install resolve-url-loader@^3.1.2 --save-dev --legacy-peer-deps
npm run dev
Nun kannst Du nachdem Du den eingebauten Server mittels php artisan serve gestartet hast wieder mit Deinem Webbrowser mit der URL http://localhost:8000/ auf Dein Projekt zugreifen. Nur diesmal siehst Du rechts oben „Log in“ bzw. „Register“. Bei Register kann sich ein Gast selber registrieren.
Damit die Registrierungs- und Passwort-Mails auch ankommen, solltest Du als Nächstes den Mailversand einrichten — wie Du E-Mails mit Laravel versenden kannst, beschreibe ich in einem eigenen Beitrag.
Wichtige packages
Log Reader
Um Deine Laravel Logfiles lesen zu können:
composer require haruncpi/laravel-log-reader
Erreichen kannst DU den Logreader dann unter https://deineserveradresse.com/admin/log-reader bzw lokal in Deiner Entwicklungsumgebung http://localhost:8000/admin/log-reader .
Task scheduler
composer require robersonfaria/laravel-database-schedule
php artisan migrate
php artisan vendor:publish --provider="RobersonFaria\DatabaseSchedule\DatabaseSchedulingServiceProvider" --tag="config"
Erreichen kannst DU den Scheduler nun unter https://deineserveradresse.com/schedule bzw. lokal in Deiner Entwicklungsumgebung http://localhost:8000/schedule .
User Administration mittels Voyager
Voyager ist ein Admin Panel, mit dem Man Benutzer anlegen kann, …
composer require tcg/voyager
php artisan voyager:install
Lege nun einen Admin Benutzer an, mit dem Du Dich bei Voyager anmelden kannst.
php artisan voyager:admin herwart@wermescher.fake --create
oder machen einen bestehenden Benutzer zum Admin
php artisan voyager:admin herwart@wermescher.fake
Zugreifen kannst Du auf Voyager indem Du /admin zur URL hinzufügst und somit in Deinem Webbrowser die URL http://localhost:8000/admin eingibst.
Installiere 42 Workflows
Infos dazu gibts auch hier: https://workflows.42coders.com/ und https://github.com/42coders/workflows
Installiere 42workflows (--ignore-platform-reqs musst Du eventuell nutzen, falls Du php 8 hast):
composer require the42coders/workflows --ignore-platform-reqs
php artisan migrate
php artisan vendor:publish --provider="the42coders\Workflows\WorkflowsServiceProvider" --tag=assets
php artisan vendor:publish --provider="the42coders\Workflows\WorkflowsServiceProvider" --tag=config
php artisan vendor:publish --provider="the42coders\Workflows\WorkflowsServiceProvider" --tag=lang
php artisan vendor:publish --provider="the42coders\Workflows\WorkflowsServiceProvider" --tag=views
php artisan migrate
Zammad API
Mit diesem API-Client kannst Du Tickets aus Laravel heraus steuern — wie das auch direkt von der Shell geht, zeige ich unter Zammad per Kommandozeile.
composer require zammad/zammad-api-client-php
Nun bearbeite die Datei
C:\Users\herwa\Development\Laravel\laravel_zammad\vendor\zammad\zammad-api-client-php\src\HTTPClient.php
Und füge folgenden Code (unter dem debug-flag) ein (somit kann Guzzle die Zertifikatskontrolle ausschalten):
$verify = false;
if ( array_key_exists( 'verify', $options ) ) {
$verify = $options['verify'] ? true : false;
}
Andere Laravel Packages
Mehr aus „Linux, DevOps & Systeme"
Docker Speicherplatz freigeben
Docker Speicherplatz freigeben: mit docker system df die Belegung sehen und mit prune ungenutzte Images, Container, Volumes, Netzwerke und Build-Cache löschen.
WeiterlesenWindows Core Prozesse verstehen
Windows Core-Prozesse verstehen: was smss.exe, csrss.exe, lsass.exe und svchost.exe wirklich tun und woran Du getarnte Malware im Prozessbaum erkennst.
WeiterlesenUbuntu LTS Release Update
Ubuntu LTS sicher aktualisieren: Snapshot bei Contabo oder Netcup anlegen, mit apt update und do-release-upgrade hochziehen und den SSH-Port bestätigen.
WeiterlesenÜber diesen Blog
Ein Sammelsurium an Denkanstößen.
Hier sammle ich Wissen, Argumente und Links zu allem, was mich beschäftigt — von Technik über Küche bis Nachhaltigkeit. Beruflich berate ich zu Cybersecurity.