Distribuera till en stagingmiljö
Konfigurera ett arbetsflöde som automatiskt distribuerar er applikation till en stagingmiljö för tester före produktion.
Distribuera till en stagingmiljö är en gratis lektion i DevOps-bootcamp på CoddyKit. Detta är lektion 2 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för DevOps-bootcamp, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i DevOps-bootcamp innehåller totalt 4 lektioner.
Vad är en stagingmiljö?
Föreställ er att ni har byggt en ny funktion för er app. Innan ni visar den för alla (i produktion) vill ni testa den i en säker och realistisk miljö. Det är här en stagingmiljö kommer in i bilden!
En stagingmiljö är en kopia av produktionsmiljön. Den används för slutlig testning före en release, så att ni kan upptäcka problem och säkerställa kvalitet utan att påverka användare i produktion.
Staging kontra produktion
Staging speglar produktionen, men miljöerna har olika syften:
- Staging: Används för kvalitetssäkring (QA), användaracceptanstestning (UAT) och slutliga kontroller. Endast en begränsad målgrupp (testare och intressenter) använder miljön.
- Produktion: Den aktiva miljö som används av alla slutanvändare. Eventuella problem här påverkar era kunder direkt.
Att först driftsätta till staging är ett viktigt steg för att minimera riskerna i produktion.
Funktionen GitHub Environments
GitHub Actions har en kraftfull funktion som kallas Environments. Med den kan ni definiera logiska miljöer, till exempel staging eller production, i ert repository.
Environments hjälper er att:
- Tillämpa skyddsregler (manuella godkännanden och väntetider).
- Hantera miljöspecifika secrets.
- Spåra driftsättningar till specifika miljöer.
Deklarera en stagingmiljö
För att använda en miljö i ert arbetsflöde definierar ni den först i inställningarna för ert repository:
- Gå till ert GitHub-repository.
- Klicka på Settings > Environments.
- Klicka på New environment och ge miljön ett namn, till exempel
staging.
Här kan ni lägga till skyddsregler, till exempel krav på att en granskare måste godkänna driftsättningar.
Grundläggande struktur för ett driftsättningsarbetsflöde
Nu ska vi titta på hur ni instruerar GitHub Actions att driftsätta till vår staging-miljö. Ni anger miljön i ett jobb:
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!"Konfigurera miljöskydd
Raden environment: staging i arbetsflödet gör mer än att bara märka driftsättningen. Om ni har konfigurerat skyddsregler för miljön staging i repositoryinställningarna tillämpas de automatiskt.
Om ni till exempel kräver ett manuellt godkännande pausas jobbet tills en behörig person har granskat och godkänt driftsättningen.
Bygga applikationen
Innan ni driftsätter behöver ni vanligtvis bygga applikationen. Det kan innebära att kompilera kod, köra tester eller paketera resurser. Vi lägger till dessa steg i jobbet:
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 buildDriftsätta de byggda artefakterna
Efter bygget är nästa steg att överföra applikationsfilerna till staging-servern. Det innebär ofta SSH, FTP eller ett molnspecifikt driftsättningsverktyg.
Här är ett konceptuellt steg. I ett verkligt scenario skulle ni ersätta echo med ert faktiska driftsättningskommando:
- 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.Sätta ihop allt: stagingarbetsflöde
Det här kompletta arbetsflödet utlöses när ni pushar till grenen develop. Det checkar ut koden, bygger appen och driftsätter den sedan konceptuellt till miljön staging, samtidigt som eventuella skyddsregler ni har konfigurerat följs.
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!"Kontroll av stagingdriftsättning
Ni har lärt er att konfigurera ett GitHub Actions-arbetsflöde för driftsättning till en stagingmiljö. Nu testar vi era kunskaper!
Repetition: stagingdriftsättning
Bra jobbat! Ni har lärt er att konfigurera GitHub Actions för driftsättning till en stagingmiljö.
- Staging är en produktionslik miljö för testning före produktion.
- GitHub Environments hjälper till att hantera driftsättningssäkerhet och secrets.
- Arbetsflöden använder nyckeln
environmentför att rikta sig mot specifika miljöer. - Den här processen minimerar riskerna och säkerställer en smidigare övergång till produktion.
I nästa avsnitt utforskar vi hur ni hanterar känslig information med miljövariabler och secrets!
Lär dig DevOps-bootcamp med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 142
- Lektioner
- 568
Vanliga frågor
Är lektionen ”Distribuera till en stagingmiljö” gratis?
Ja – du kan läsa vilka 3 lektioner som helst i lärvägen DevOps-bootcamp, inklusive ”Distribuera till en stagingmiljö”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i DevOps-bootcamp innehåller totalt 4 lektioner.
Vad lär jag mig i ”Distribuera till en stagingmiljö”?
Konfigurera ett arbetsflöde som automatiskt distribuerar er applikation till en stagingmiljö för tester före produktion. Ni övar på DevOps-bootcamp med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig DevOps-bootcamp?
Du behöver inga förkunskaper. Utbildningen i DevOps-bootcamp på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 2 av 4.
Hur lång tid tar lektionen ”Distribuera till en stagingmiljö”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här DevOps-bootcamp-lektionen?
Ja. Varje DevOps-bootcamp-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Introduktion till Continuous Deployment
- Distribuera till en stagingmiljö
- Miljövariabler och hemligheter
- Driftsätt i produktion med godkännandegrindar