Anpassa inställningarna för projekt och redigeringsprogram
Du har konfigurerat en utvecklingscontainer för ett av projekten i ditt företag. Det kommer nu att "bara fungera" för alla som har Docker och Dev Containers-tillägget. De måste fortfarande installera beroenden. De kan också behöva vissa Visual Studio Code-tillägg som de inte känner till.
Som tur är kan du anpassa och automatisera all projektkonfiguration med filen devcontainer.json.
En närmare titt på devcontainer.json
Nu ska vi titta på de viktigaste alternativen i .devcontainer/devcontainer.json
filen från projektet Produktinstrumentpanel. Det blir mycket på en gång, så vi delar upp det i olika avsnitt.
Skapa konfiguration
Egenskapen image
definierar hur containern ska skapas, baserat på vad som kallas en containeravbildning.
"image": "mcr.microsoft.com/devcontainers/python:0-3.11"
},
Den här avbildningen finns på lagringsplatsen devcontainers/images, där du kan kolla in den ytterligare. Avbildningarna i den här lagringsplatsen är alla fördefinierade avbildningar, vilket påskyndar arbetsflödet och resulterar i en enklare .devcontainer/devcontainer.json
konfiguration.
Du kan också använda filer som kallas Dockerfile eller en Docker Compose-fil för att konfigurera konfigurationen. Dessa filer kan finnas i mappen .devcontainer
och du kan konfigurera vissa installationskrav ytterligare, till exempel att installera ytterligare programvara. Du kan läsa mer i vår dokumentation om utvecklingscontainer.
Funktioner
Funktioner för utvecklingscontainer är fristående, delningsbara 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.
Projektinställningar
Ett senare avsnitt i filen handlar direkt om projektkonfiguration.
customizations
anger produktspecifika egenskaper för produkter som stöder dev-containrar, till exempel VS Code och GitHub Codespaces.
Du kan till exempel ange vscode.settings
att kopiera datorspecifika inställningar till containern. Du kanske har dessa inställningar i din egen Visual Studio Code-konfiguration. Genom att lägga till dem i settings
ser du till att alla som öppnar det här projektet får dessa specifika VS Code-inställningar.
I den här Python-containern kan du se de här inställningarna i basavbildningen mcr.microsoft.com/devcontainers/python:0-3.11
. De ger användaren en förbättrad Python-redigeringsupplevelse.
- Du kan använda matrisen
extensions
customizations.vscode
i egenskapen för att ange vilka Visual Studio Code-tillägg som ska installeras i Visual Studio Code när den ansluter till containern. Din normala Visual Studio Code-konfiguration och alla tillägg som du redan har kommer inte att finnas när du använder Dev Containers. Tillägg anges här med sina ID:n.
postCreateCommand
Med postCreateCommand
egenskapen kan du köra alla kommandon som du vill när containern har skapats. Du kanske kommer ihåg från den första övningen att du måste köra kommandot pip3
för att installera beroenden. Men hur vet man att man måste göra det? Det är inte säkert att man gör det. Du kan konfigurera det här så att det sker automatiskt och andra inte behöver oroa sig för det.
I nästa övning ändrar du devcontainer.json-filen för att automatisera flera aspekter av projektet så att andra utvecklare får en bra start.