In eine Staging-Umgebung deployen
Richten Sie einen Workflow ein, der Ihre Anwendung automatisch in eine Staging-Umgebung für Tests vor der Produktion deployt.
In eine Staging-Umgebung deployen ist eine kostenlose DevOps Bootcamp-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des DevOps Bootcamp-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der DevOps Bootcamp-Kurs umfasst insgesamt 4 Lektionen.
Was ist eine Staging-Umgebung?
Stellen Sie sich vor, Sie haben eine neue Funktion für Ihre App entwickelt. Bevor Sie sie allen Nutzern zeigen (in der Produktionsumgebung), möchten Sie sie in einer sicheren, realistischen Umgebung testen. Genau dafür gibt es eine Staging-Umgebung!
Eine Staging-Umgebung ist eine Kopie Ihrer Produktionsumgebung. Sie wird für abschließende Tests vor einem Release verwendet. So können Sie Probleme erkennen und die Qualität sicherstellen, ohne die Nutzer im Live-Betrieb zu beeinträchtigen.
Staging und Produktion im Vergleich
Auch wenn Staging die Produktionsumgebung nachbildet, unterscheiden sich die Zwecke:
- Staging: Für Qualitätssicherung (QA), Benutzerakzeptanztests (UAT) und abschließende Prüfungen. Nur ein begrenzter Personenkreis (Tester und Stakeholder) arbeitet damit.
- Produktion: Die Live-Umgebung, die von allen Endnutzern verwendet wird. Probleme in dieser Umgebung wirken sich direkt auf Ihre Kunden aus.
Das Deployment in Staging ist ein entscheidender Schritt, um Risiken in der Produktionsumgebung zu minimieren.
GitHub-Environments-Funktion
GitHub Actions bietet eine leistungsfähige Funktion namens Environments. Damit können Sie logische Umgebungen (z. B. staging oder production) in Ihrem Repository definieren.
Environments helfen Ihnen dabei:
- Schutzregeln anzuwenden (manuelle Genehmigungen, Wartezeiten).
- Umgebungsspezifische Secrets zu verwalten.
- Deployments in bestimmte Umgebungen nachzuverfolgen.
Eine Staging-Umgebung deklarieren
Um eine Umgebung in Ihrem Workflow zu verwenden, definieren Sie sie zunächst in den Einstellungen Ihres Repositorys:
- Rufen Sie Ihr GitHub-Repository auf.
- Klicken Sie auf Settings > Environments.
- Klicken Sie auf New environment und geben Sie der Umgebung beispielsweise den Namen
staging.
Hier können Sie Schutzregeln hinzufügen, etwa die Anforderung, dass ein Reviewer Deployments genehmigen muss.
Grundstruktur eines Deployment-Workflows
Sehen wir uns nun an, wie Sie GitHub Actions anweisen, in unsere staging-Umgebung zu deployen. Dazu geben Sie die Umgebung innerhalb eines Jobs an:
name: Deploy to Staging
on: push
jobs:
deploy-to-staging:
runs-on: ubuntu-latest
environment: staging # This links to your 'staging' environment
steps:
- name: Say Hello
run: echo "Deploying to staging!"Umgebungsschutz konfigurieren
Die Zeile environment: staging in Ihrem Workflow dient nicht nur zur Kennzeichnung des Deployments. Wenn Sie in den Repository-Einstellungen Schutzregeln für die Umgebung staging eingerichtet haben, werden diese automatisch angewendet.
Wenn beispielsweise eine manuelle Genehmigung erforderlich ist, pausiert dieser Job, bis eine dazu berechtigte Person das Deployment geprüft und genehmigt hat.
Ihre Anwendung bauen
Vor dem Deployment müssen Sie Ihre Anwendung normalerweise bauen. Dazu können das Kompilieren von Code, das Ausführen von Tests oder das Packen von Assets gehören. Wir fügen diese Schritte zu unserem Job hinzu:
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js (Example build step)
uses: actions/setup-node@v4
with:
node-version: '18'
- name: Install dependencies
run: npm ci
- name: Build application
run: npm run buildGebaute Artefakte deployen
Nach dem Build besteht der nächste Schritt darin, Ihre Anwendungsdateien auf den Staging-Server zu übertragen. Dazu werden häufig SSH, FTP oder ein Cloud-spezifisches Deployment-Tool verwendet.
Hier sehen Sie einen konzeptionellen Schritt. In einem echten Szenario würden Sie echo durch Ihren tatsächlichen Deployment-Befehl ersetzen:
- name: Deploy to Staging Server
run: |
echo "Simulating deployment to staging..."
# scp -r ./dist user@staging.example.com:/var/www/html
# Or use a specific deployment action for AWS, Azure, etc.Alles zusammenführen: Staging-Workflow
Dieser vollständige Workflow wird bei Pushes in den Branch develop ausgelöst. Er checkt den Code aus, baut die App und deployed sie anschließend konzeptionell in die Umgebung staging. Dabei werden alle von Ihnen eingerichteten Schutzregeln berücksichtigt.
name: Deploy to Staging Environment
on:
push:
branches:
- develop # Trigger only on pushes to the 'develop' branch
jobs:
deploy:
runs-on: ubuntu-latest
environment: staging # Link this job to the 'staging' environment
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js (Example)
uses: actions/setup-node@v4
with:
node-version: '18'
- name: Install dependencies
run: npm ci
- name: Build application
run: npm run build
- name: Deploy to Staging Server
run: echo "Deployment to staging completed!"Wissenscheck: Staging-Deployment
Sie haben gelernt, wie ein GitHub-Actions-Workflow für das Deployment in eine Staging-Umgebung eingerichtet wird. Testen Sie nun Ihr Wissen!
Rückblick: Staging-Deployments
Großartig! Sie haben gelernt, wie Sie GitHub Actions für das Deployment in eine Staging-Umgebung einrichten.
- Staging ist eine produktionsnahe Umgebung für Tests vor dem Produktionsstart.
- GitHub-Environments helfen dabei, die Sicherheit von Deployments und Secrets zu verwalten.
- Workflows verwenden den Schlüssel
environment, um bestimmte Umgebungen anzusprechen. - Dieser Prozess minimiert Risiken und sorgt für einen reibungsloseren Übergang in die Produktionsumgebung.
Als Nächstes sehen Sie sich an, wie Sie vertrauliche Informationen mit Umgebungsvariablen und Secrets verwalten!
Häufig gestellte Fragen
Ist die Lektion „In eine Staging-Umgebung deployen“ kostenlos?
Ja — der vollständige Text von „In eine Staging-Umgebung deployen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des DevOps Bootcamp-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der DevOps Bootcamp-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „In eine Staging-Umgebung deployen“?
Richten Sie einen Workflow ein, der Ihre Anwendung automatisch in eine Staging-Umgebung für Tests vor der Produktion deployt. Du übst DevOps Bootcamp mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um DevOps Bootcamp zu starten?
Keine Vorkenntnisse erforderlich. DevOps Bootcamp auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.
Wie lange dauert die Lektion „In eine Staging-Umgebung deployen“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser DevOps Bootcamp-Lektion Code schreiben und ausführen?
Ja. Jede DevOps Bootcamp-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Einführung in Continuous Deployment
- In eine Staging-Umgebung deployen
- Umgebungsvariablen und Secrets
- Mit Freigabestufen in die Produktion deployen