Laravel · Deploy+
Hosting für Laravel, mit Deployment bei jedem Push.
Deploy+v42 veröffentlicht
main · a91f3c2 · vor 3 Min.
- PHP 8.4 OPcache · Composer 2 ✓
- MySQL 8 tuapp_prod · 214 MB ✓
- Redis In-Memory-Cache ✓
- Scheduler schedule:run · vor 12 s
- Queues default · 0 ausstehend ✓
PHP 8.1 bis 8.5
die Version, die Ihr Laravel braucht, pro Projekt
Deploy+ inklusive
aus GitHub, GitLab, Bitbucket oder Gitea
Redis inklusive
Cache in allen Tarifen; persistent ab Avanza
Rollback in Sekunden
die letzten Versionen bleiben auf dem Server
Anforderungen
Was eine Laravel-App braucht, ohne einen Server aufzusetzen.
- PHP 8.3 oder höher · Laravel 12: 8.2 Von 5.4 bis 8.5, mit der gewünschten Version für jedes Projekt.
- Erweiterungen ctype, curl, dom, fileinfo, filter, hash, mbstring, openssl, pcre, pdo, session, tokenizer, xml Verfügbar im PHP-Selektor, zusammen mit intl, gd, redis oder imagick.
- Abhängigkeiten Composer 2 Im Terminal Ihres Kontos und im Deploy+-Skript.
- Assets Node und npm für Vite Node über NVM: Deploy+ installiert es vorher, wenn Ihr Skript es verwendet.
- Datenbank MySQL 8, PostgreSQL oder SQLite MySQL 8, und Deploy+ legt die Datenbank an und schreibt die .env, wenn Sie das Repository verbinden.
- Cache, Queues und Sessions database standardmäßig seit Laravel 11 Queues und Sessions in Ihrem MySQL oder, ab Avanza, in persistentem Redis; für den Cache ist Redis in allen Tarifen enthalten.
- Scheduler Cron jede Minute mit schedule:run Deploy+ trägt ihn beim Veröffentlichen in Ihren Cron ein, mit dem PHP Ihrer Version.
- Deployment Git und SSH Deploy+ mit signiertem Webhook; SSH und Git in Ihrem Konto, sobald aktiviert.
Anforderungen laut die Laravel-Dokumentation.
Deploy+
Die letzte Meile, erledigt.
Deployment
Ein Push, eine neue Version, null Sekunden Ausfallzeit
Deploy #42 · main
Laravel-Profil› git clone a91f3c2 1,8 s
› composer install --no-dev --optimize-autoloader 12,4 s
› npm ci && npm run build vite 21,0 s
› php artisan migrate --force 0,9 s
› php artisan optimize config · routes · views 1,2 s
Das Profil
Es weiß, wohin public, storage und die .env gehören
.env + storage
von allen Versionen gemeinsam genutzt; die .env bearbeiten Sie im Panel
Gemeinsam für alle Versionen
~/deploy/tuapp/shared/ → releases/20260905-1012/
.envbearbeitbar
storage/aus dem Profil
public/uploads/Ihre
Scheduler und Queues
Der Scheduler per Cron, die Queues sofort
Eine Cron-Zeile
jede Minute* * * * * php ~/tuapp/current/artisan schedule:run
routes/console.php
- queue:work --stop-when-empty jede Minute
- emails:resumen-diario 08:00
- model:prune 02:00
- nächste Ausführung
Rollback
Zurückgehen dauert Sekunden
5 Versionen
standardmäßig aufbewahrt; Sie entscheiden, wie viele
Deployment-Verlauf
5 gespeicherte Versionengestern 18:30 · e07b9d4
die Version bleibt auf dem Server
Das Skript
Das Skript, das wir für Laravel empfehlen.
Es geht von dem aus, das das Laravel-Profil vorschlägt, und ergänzt die Migrationen. Es läuft auf der neuen Version, bevor sie veröffentlicht wird: Schlägt ein Befehl fehl, wird nicht veröffentlicht. Danach startet Deploy+ Ihre persistenten Worker mit dem neuen Code neu.
- npm ci && npm run build
- nur, wenn Ihre App Assets mit Vite baut; Deploy+ installiert vorher Node
- migrate --force
- die Migrationen laufen vor dem Veröffentlichen, gegen die Produktionsdatenbank
- optimize
- cacht Konfiguration, Routen, Views und Events der neuen Version; die persistenten Worker startet Deploy+ beim Veröffentlichen neu
Forge, VPS oder Hosting
Brauchen Sie einen Server für Ihre Laravel-App?
-
Der Server
- Ein VPS mit Forge
- Sie verwalten ihn; Forge konfiguriert ihn
- Ein VPS von Hand
- Sie richten ihn ein und verwalten ihn
- Hostsuar
- Wir verwalten ihn
-
Patches und Sicherheit
- Ein VPS mit Forge
- Ihre Sache
- Ein VPS von Hand
- Ihre Sache
- Hostsuar
- Unsere Sache, mit Virenscanner und Isolierung
-
Deployment
- Ein VPS mit Forge
- Forge, mit Ihrem Skript
- Ein VPS von Hand
- Ihr eigenes Skript
- Hostsuar
- Deploy+ inklusive, mit Rollback
-
Backups
- Ein VPS mit Forge
- Die, die Sie einrichten
- Ein VPS von Hand
- Die, die Sie einrichten
- Hostsuar
- 80 Wiederherstellungspunkte inklusive
-
Queues und Horizon
- Ein VPS mit Forge
- Ja
- Ein VPS von Hand
- Ja
- Hostsuar
- Ja, laufend ab Avanza
-
WebSockets (Reverb)
- Ein VPS mit Forge
- Ja
- Ein VPS von Hand
- Ja
- Hostsuar
- Mit einem Pusher-kompatiblen Dienst; wir helfen Ihnen beim Anbinden
-
Octane
- Ein VPS mit Forge
- Ja
- Ein VPS von Hand
- Ja
- Hostsuar
- Nein: PHP wird von LiteSpeed ausgeliefert
-
Support
- Ein VPS mit Forge
- Der des Tools
- Ein VPS von Hand
- Ihrer
- Hostsuar
- Techniker, die mit Laravel arbeiten
Was nicht passt, ist alles, was einen eigenen Server davor braucht: Octane, weil PHP hier von LiteSpeed ausgeliefert wird, und Reverb, ein Server, der auf einem eigenen Port lauscht, was wir nicht unterstützen. Für Echtzeit arbeitet Laravel von Haus aus mit Pusher und kompatiblen Diensten. Queue-Worker und Horizon laufen ab Avanza als persistente Prozesse: Dafür einen Server zu verwalten, ist Arbeit, die Sie sich sparen können.
Fragen
Laravel auf Hosting, ohne Kleingedrucktes.
Kann ich Laravel-Queues auf einem Hosting nutzen?
Ja, auf zwei Arten. Ab dem Tarif Avanza läuft ein queue:work oder Horizon als persistenter Prozess: Er verarbeitet jeden Job sofort und startet von selbst neu, wenn er abstürzt. Avanza erlaubt 3 Prozesse, Max 5 und Elastic 8. In jedem Tarif kann der Scheduler jede Minute ein queue:work --stop-when-empty starten, das alles Ausstehende abarbeitet und sich beendet. Alles zählt zu den Ressourcen Ihres Tarifs.
Funktionieren Horizon, Reverb und Octane?
Horizon ja, ab dem Tarif Avanza: Sie lassen es als persistenten Prozess auf einem persistenten Redis laufen, beides über den Kundenbereich. Reverb nicht auf dem Hosting selbst: Es ist ein Server, der auf einem eigenen Port lauscht, und solche Programme unterstützen wir nicht. Für WebSockets verbinden Sie Ihre App mit einem Pusher-kompatiblen Dienst wie Pusher Channels oder Ably, den Laravel von Haus aus unterstützt, und wir helfen Ihnen beim Anbinden. Octane nicht: PHP wird hier von LiteSpeed ausgeliefert, und Octane braucht einen eigenen Anwendungsserver (Swoole, RoadRunner oder FrankenPHP). Livewire, Inertia, Filament, Sanctum, Socialite oder Scout funktionieren ohne Besonderheiten.
Welche PHP-Version brauche ich?
Laravel 13 verlangt PHP 8.3 oder höher, Laravel 12 PHP 8.2. Sie haben 5.4 bis 8.5 und wählen die Version pro Domain oder pro Ordner, sodass eine alte und eine neue App im selben Konto nebeneinander laufen. Bei einer mit Deploy+ veröffentlichten Website wird die Version in der .htaccess Ihres Repositorys festgelegt, damit sie bei jedem Deployment mit dem Code mitwandert.
Kann ich eine Testumgebung haben?
Ja. Verbinden Sie dasselbe Repository zweimal: den Branch main mit der Domain und zum Beispiel develop mit staging.tuapp.com, jeweils mit eigener .env und eigener Datenbank. Jeder Push auf einen Branch wird nur auf dessen Website deployt.
Habe ich SSH und Composer?
Ja. Den SSH-Zugang aktivieren Sie in den Optionen des Dienstes im Kundenbereich, und zusätzlich haben Sie das integrierte Terminal von cPanel, mit Git und Composer. Und in Deploy+ können Sie einen Artisan-Befehl auf der veröffentlichten Version ausführen, ohne ein Terminal zu öffnen.
Und wenn ich von Forge oder einem anderen Hosting komme?
Sie verbinden dasselbe Repository, und Deploy+ deployt es genauso; mitbringen müssen Sie die Datenbank und das, was Sie in storage ablegen. Wenn Sie von einem anderen Anbieter kommen, helfen wir Ihnen beim Umzug.
Passende Anleitungen in unserer Dokumentation
- Instalar Laravel en el hosting Anleitung lesen →
- Deploy automático desde GitHub con rollback Anleitung lesen →
- Procesos persistentes: workers de colas y Horizon Anleitung lesen →
- Redis persistente para colas, sesiones y Horizon Anleitung lesen →
- WebSockets en Laravel: Reverb, Pusher y alternativas Anleitung lesen →
- LiteSpeed Cache en Laravel Anleitung lesen →
- Redis como caché de objetos Anleitung lesen →
- Tareas cron en cPanel Anleitung lesen →
- Composer en el hosting Anleitung lesen →