Lägga till programvara i en befintlig container

Slutförd

Din anpassade container för företaget börjar arta sig. Med kraften i Dev Containers har du kunnat lägga till en förkonfigurerad utvecklingscontainer, och genom övningarna hittills har du anpassat din upplevelse via filen devcontainer.json. Men hur gör man om man vill lägga till ytterligare programvara utöver det som finns i dessa avbildningar eller förkonfigurerade utvecklingscontainrar?

Introduktion till installation av ytterligare programvara

Ytterligare programvara kan till exempel vara en annan teknikstack som används i företaget. Du kanske till exempel vill ta med Node.js i någon av dina utvecklingscontainrar, eftersom du vet att det ingår i många utvecklingsarbetsflöden.

När du körde Dev Containers: Lägg till konfigurationsfiler för utvecklingscontainer lades en .devcontainer mapp till i din app. Den innehöll en devcontainer.json fil baserat på den här containeravbildningen. Även om den här avbildningen ger oss många alternativ för vårt team kanske vi vill iterera på dem genom att installera mer programvara.

Metoder för att installera programvara

Du kan installera programvara via den integrerade terminalen. De flesta containeravbildningar baseras på Debian eller Ubuntu, där du använder apt kommandot eller apt-get för att installera nya paket.

Viktigt!

När du installerar något från apt-get, kör du först apt-get update. Det här kommandot uppdaterar listan med paket och paketdatabaser så att du har den senaste listan i cachen.

Men om du gör ändringar i mappen .devcontainer och behöver återskapa containern måste du installera om allt du har installerat manuellt. För att undvika det här problemet kan du använda postCreateCommand egenskapen i devcontainer.json, som du nämnde i föregående lektion.

Den mest effektiva metoden som bevarar dina ändringar även efter återskapande är att installera programvara via en funktion.

Programvaruinstallation via funktioner

Som vi nämnde i lektion 5 i den här modulen är utvecklingscontainern "Funktioner" fristående, delbara enheter för installationskod och konfiguration av utvecklingscontainer. Namnet kommer från tanken att om du refererar till en av dem kan du snabbt och enkelt lägga till fler verktyg, körning eller bibliotek "Funktioner" i din utvecklingscontainer för användning av dig eller dina medarbetare.

När du använder VS Code-kommandot Dev Containers: Add Dev Container Configuration Files visas en lista med skript för att anpassa befintliga konfigurationer för dev-container, till exempel installation av Git eller Azure CLI.

När du återskapar och öppnar i containern blir de funktioner som du har valt tillgängliga i din devcontainer.json:

"features": {
    "ghcr.io/devcontainers/features/azure-cli:1": {
        "version": "latest"
    }
}

Med kommandot VS Code Dev Containers: Konfigurera containerfunktioner kan du uppdatera en befintlig konfiguration.

Funktionerna i VS Code-användargränssnittet kommer nu från ett centralt index som du kan utforska och till och med bidra till.

Du kan läsa mer om hur funktioner fungerar och deras distribution.

I nästa övning installerar du Node.js. Sedan kontrollerar du att Node.js är tillgängligt i containern som körs.