Skip to main content
📝 Laravel-Anwendungen

Laravel-Projekte automatisch mit GitHub Actions in Produktion bereitstellen

Automatisieren Sie Laravel-Deployments in die Produktion mit GitHub Actions. Komplette CI/CD-Pipeline-Einrichtung — vom Push bis live in Minuten, ohne manuelle Schritte.

4 min

Lesezeit

607

Wörter

Apr 13, 2025

Veröffentlicht

Engr Mejba Ahmed

Geschrieben von

Engr Mejba Ahmed

Artikel teilen

Laravel-Projekte automatisch mit GitHub Actions in Produktion bereitstellen

Sind Sie es leid, Ihr Laravel-Projekt bei jedem Update manuell auf einen Produktionsserver hochzuladen? In diesem Leitfaden erfahren Sie, wie Sie Ihren Laravel-Deployment-Prozess mit GitHub Actions automatisieren — dem DevOps-freundlichen CI/CD-Tool, das in GitHub integriert ist.

Lassen Sie uns Ihren Workflow optimieren und Ihre Laravel-App mit einem einzigen git push auf Ihrem Hostinger VPS (oder jedem SSH-zugänglichen Server) bereitstellen.

✅ Warum GitHub Actions für Laravel-Deployment verwenden?

Mit GitHub Actions können Sie:

  • Ihr Produktions-Deployment nach jedem Push automatisieren.
  • Die Verwendung unsicherer FTP-Tools vermeiden.
  • Zeit sparen und menschliche Fehler reduzieren.
  • Eine professionelle CI/CD-Pipeline als Laravel-Entwickler aufbauen.

🧠 Voraussetzungen

Stellen Sie vor dem Start sicher, dass Sie Folgendes haben:

  1. Ein Laravel-Projekt auf GitHub gehostet.
  2. Einen Hostinger VPS oder Webhosting-Plan mit SSH-Zugang.
  3. Zugang zum Terminal/Befehlszeile.
  4. Composer auf Ihrem Server installiert.

🛠️ Schritt 1: SSH-Schlüssel generieren und bei Hostinger hochladen

  1. SSH-Schlüssel generieren auf Ihrem lokalen Rechner:
ssh-keygen -t rsa -b 4096 -C "[email protected]"

Es werden zwei Dateien generiert:

  • ~/.ssh/colorpark_hostinger (privater Schlüssel)
  • ~/.ssh/colorpark_hostinger.pub (öffentlicher Schlüssel)
  1. Fügen Sie den öffentlichen Schlüssel bei Hostinger hinzu:

Gehen Sie zu Hostinger → Erweitert → SSH-Zugang → SSH-Schlüssel Klicken Sie auf SSH-Schlüssel hinzufügen, fügen Sie den Inhalt des öffentlichen Schlüssels ein:

cat ~/.ssh/colorpark_hostinger.pub
  1. Speichern Sie den Inhalt des privaten Schlüssels, um ihn später als GitHub Secret hinzuzufügen:
cat ~/.ssh/colorpark_hostinger

🔐 Schritt 2: GitHub Secrets hinzufügen

In Ihrem GitHub-Repository:

Gehen Sie zu: Settings → Secrets and variables → Actions → New repository secret

Fügen Sie folgende Secrets hinzu:

HOSTINGER_SSH_HOST='145.223.89.199'      # Ihre Server-IP
HOSTINGER_SSH_PORT='65002'               # Ihr SSH-Port
HOSTINGER_SSH_USER='u597250090'          # Ihr SSH-Benutzername
HOSTINGER_SSH_KEY='(fügen Sie Ihren PRIVATEN Schlüssel ein)'
DEPLOY_PATH='/home/u597250090/domains/example.com/public_html'

📁 Schritt 3: GitHub Actions Workflow erstellen

Erstellen Sie in Ihrem Laravel-Projekt folgende Datei:

mkdir -p .github/workflows
touch .github/workflows/deploy.yml

Fügen Sie folgende vollständige deploy.yml-Konfiguration ein:

name: 🚀 Deploy zu Hostinger

on:
  push:
    branches:
      - main

jobs:
  deploy:
    runs-on: ubuntu-latest

    steps:
      - name: Code auschecken
        uses: actions/checkout@v3

      - name: SSH-Schlüssel einrichten
        run: |
          mkdir -p ~/.ssh
          echo "${{ secrets.HOSTINGER_SSH_KEY }}" > ~/.ssh/id_rsa
          chmod 600 ~/.ssh/id_rsa
          ssh-keyscan -p ${{ secrets.HOSTINGER_SSH_PORT }} ${{ secrets.HOSTINGER_SSH_HOST }} >> ~/.ssh/known_hosts

      - name: Deployment via rsync
        run: |
          rsync -avz --delete \
            --exclude=".env" \
            --exclude=".gitignore" \
            -e "ssh -p ${{ secrets.HOSTINGER_SSH_PORT }}" \
            ./ ${{ secrets.HOSTINGER_SSH_USER }}@${{ secrets.HOSTINGER_SSH_HOST }}:${{ secrets.DEPLOY_PATH }}

      - name: Laravel Post-Deploy-Befehle
        uses: appleboy/ssh-action@master
        with:
          host: ${{ secrets.HOSTINGER_SSH_HOST }}
          username: ${{ secrets.HOSTINGER_SSH_USER }}
          key: ${{ secrets.HOSTINGER_SSH_KEY }}
          port: ${{ secrets.HOSTINGER_SSH_PORT }}
          script: |
            cd ${{ secrets.DEPLOY_PATH }}
            composer install --no-dev --prefer-dist --no-interaction
            php artisan optimize:clear

🚀 Schritt 4: Code pushen, um Deployment auszulösen

Sobald alles eingerichtet ist, pushen Sie Ihr Laravel-Projekt zum main-Branch:

git add .
git commit -m "🔧 GitHub Actions für automatisches Deployment konfigurieren"
git push origin main

GitHub löst automatisch das Deployment aus. Sie können die Logs unter dem Tab "Actions" Ihres GitHub-Repos einsehen.


✅ Bonustipps

  • Stellen Sie sicher, dass Ihr Server die richtigen Dateiberechtigungen hat.
  • Sichern Sie immer Ihre .env-Datei und Datenbank, bevor Sie php artisan migrate --force ausführen.
  • Bei Shared Hosting prüfen Sie, ob SSH-Schlüssel-Login und Composer unterstützt werden.

📌 Abschließende Gedanken

Durch die Integration von GitHub Actions in Ihren Laravel-Deployment-Prozess sparen Sie nicht nur Zeit — Sie bauen einen professionellen Workflow auf, der skaliert.

Keine manuellen Uploads mehr, kein FTP mehr. Einfach pushen und deployen. 🔥


Möchten Sie mehr solche Automatisierungen erstellen?

👉 Folgen Sie für weitere Laravel DevOps-Tipps und Full-Stack-Developer-Tutorials.

Coffee cup

Hat Ihnen dieser Artikel gefallen?

Ihre Unterstützung hilft mir, mehr tiefgehende technische Inhalte, Open-Source-Tools und kostenlose Ressourcen für die Entwickler-Community zu erstellen.

Verwandte Themen

Engr Mejba Ahmed

Über den Autor

Engr Mejba Ahmed

Engr. Mejba Ahmed builds AI-powered applications and secure cloud systems for businesses worldwide. With 10+ years shipping production software in Laravel, Python, and AWS, he's helped companies automate workflows, reduce infrastructure costs, and scale without security headaches. He writes about practical AI integration, cloud architecture, and developer productivity.

Discussion

Comments

0

No comments yet

Be the first to share your thoughts

Leave a Comment

Your email won't be published

4  +  4  =  ?

Weiter lernen

Verwandte Artikel

Alle anzeigen

Comments

Leave a Comment

Comments are moderated before appearing.

Learning Resources

Expand Your Knowledge

Accelerate your growth with structured courses, verified certificates, interactive flashcards, and production-ready AI agent skills.

Sample Certificate of Completion

Sample certificate — complete any course to earn yours

Engr Mejba Ahmed

Engr Mejba Ahmed

Claude Code Expert · Online

👋

Hey there!

Quick Actions

WhatsApp Instant reply

Chat on WhatsApp

+880 1723 741224 · Instant reply

Popular Questions

Engr Mejba Ahmed is connected
Engr Mejba Ahmed is typing...
Engr Mejba Ahmed avatar

✉ Want me to follow up? Drop your email

Engr Mejba Ahmed avatar

📞 Connect Directly

Choose how you'd like to reach me

WhatsApp

+880 1723 741224

Email

[email protected]

✓ Details sent! I'll get back to you shortly.

Powered by OpenAI

335+

Blog Posts

25

AI Courses

63

Projects

Services & Expertise

Pricing & Process

Learning & Resources

Connect & Support