Project- en editor-instellingen aanpassen

Voltooid

U hebt een dev-container ingesteld voor een van de projecten van uw organisatie. Het werkt nu alleen voor iedereen die Docker en de Dev Containers-extensie heeft. Ze moeten nog steeds afhankelijkheden installeren. Ze hebben mogelijk ook enkele Visual Studio Code-extensies nodig die ze nog niet kennen.

Gelukkig kunt u alle projectinstellingen volledig aanpassen en automatiseren met het bestand devcontainer.json.

Devcontainer.json nader bekijken

Laten we eens kijken naar de belangrijkste opties in het .devcontainer/devcontainer.json bestand vanuit het project Productdashboard. Het duurt wat lang om alles tegelijk te bekijken, dus we delen het op in gedeelten.

Configuratie compileren

De image eigenschap definieert hoe de container wordt gemaakt, op basis van wat een containerinstallatiekopieën wordt genoemd.

"image": "mcr.microsoft.com/devcontainers/python:0-3.11"
},

Deze installatiekopie wordt gehost in de opslagplaats devcontainers/images, waar u deze verder kunt bekijken. De installatiekopieën in deze opslagplaats zijn allemaal vooraf gebouwde installatiekopieën, die uw werkstroom versnellen en resulteren in een eenvoudigere .devcontainer/devcontainer.json configuratie.

U kunt ook bestanden gebruiken die bekend zijn als een Dockerfile of een Docker Compose-bestand om uw installatie te configureren. Deze bestanden kunnen zich in uw .devcontainer map bevinden en u toestaan om bepaalde installatievereisten verder te configureren, zoals het installeren van extra software. Meer informatie vindt u in onze documentatie voor ontwikkelaarscontainers.

Functies

Functies voor ontwikkelingscontainers zijn zelfstandige, deelbare eenheden van installatiecode en configuratie van dev-containers. De naam komt van het idee dat u snel en eenvoudig meer hulpprogramma's, runtime of bibliotheek 'Functies' kunt toevoegen aan uw ontwikkelcontainer voor gebruik door u of uw medewerkers.

Wanneer u de VS Code-opdracht Dev Containers gebruikt: Dev Container Configuration Files toevoegen, ziet u een lijst met scripts voor het aanpassen van de bestaande dev-containerconfiguraties, zoals het installeren van Git of de Azure CLI.

Projectinstellingen

Een latere sectie van het bestand behandelt rechtstreeks de projectconfiguratie.

customizations stelt productspecifieke eigenschappen in voor producten die ondersteuning bieden voor dev-containers, zoals VS Code en GitHub Codespaces.

U kunt bijvoorbeeld instellen vscode.settings dat u computerspecifieke instellingen naar de container kopieert. U hebt deze instellingen mogelijk in uw eigen Visual Studio Code-instelling. Door ze toe te voegen aan het settingsproject, zorgt u ervoor dat iedereen die dit project opent, deze specifieke VS Code-instellingen krijgt.

In deze Python-container ziet u deze instellingen in de basisinstallatiekopieën mcr.microsoft.com/devcontainers/python:0-3.11. Ze geven de gebruiker een verbeterde bewerkingservaring voor Python.

  • U kunt de extensions matrix in de customizations.vscode eigenschap gebruiken om op te geven welke Visual Studio Code-extensies moeten worden geïnstalleerd in Visual Studio Code wanneer deze verbinding maakt met de container. De normale installatie van Visual Studio Code en alle extensies die u al hebt, zijn niet aanwezig wanneer u Dev Containers gebruikt. Extensies worden hier opgegeven met hun id's.

postCreateCommand

Met postCreateCommand de eigenschap kunt u opdrachten uitvoeren die u wilt nadat de container is gemaakt. Zoals u zich nog herinnert van de eerste oefening, moest u de opdracht pip3 uitvoeren om afhankelijkheden te installeren. Maar hoe zou u dat nou moeten weten? Mogelijk weet u het niet. U kunt deze hier zo configureren dat dit automatisch gebeurt en anderen zich geen zorgen hoeven te maken.

In de volgende oefening wijzigt u het bestand devcontainer.json om verschillende aspecten van het project te automatiseren. Hiermee kunnen andere ontwikkelaars direct probleemloos aan de slag.