Delen via


Herbruikbare dev box-aanpassingen maken

Microsoft Dev Box-aanpassing is een benadering van configuratie als code voor het aanpassen van ontwikkelvakken. In dit artikel leert u hoe u ontwikkelvakken aanpast met behulp van een catalogus met taken en een configuratiebestand voor het installeren van software, het toevoegen van extensies, kloonopslagplaatsen en meer. Deze taken worden toegepast op het nieuwe ontwikkelvak in de laatste fase van het aanmaakproces. U kunt instellingen en software toevoegen zonder dat u een aangepaste VM-installatiekopieën (virtuele machine) hoeft te maken.

Aanpassingen zijn handig voor ontwikkelteams. Potentiële ontwikkelaars kunnen aanpassingen gebruiken om de software die vereist is voor hun specifieke ontwikkelteam vooraf te configureren en configuratiebestanden te maken die alleen de taken toepassen die relevant zijn voor hun teams. Met deze methode kunnen ontwikkelaars ontwikkelvakken maken die het beste bij hun werk passen, zonder dat ze de IT-afdeling om wijzigingen hoeven te vragen of te wachten totdat het technische team een aangepaste VM-installatiekopie maakt.

Door aanpassingen te gebruiken, kunt u algemene installatiestappen automatiseren, tijd besparen en de kans op configuratiefouten verminderen. Enkele voorbeelden van taken zijn:

  • Software installeren met WinGet-pakketbeheer.
  • Instellingen voor het besturingssysteem instellen, zoals het inschakelen van Windows-functies.
  • Toepassingen configureren zoals het installeren van Visual Studio-extensies.

U kunt aanpassingen in fasen toepassen, bouwen van een eenvoudige maar functionele configuratie tot een geautomatiseerd proces. De fasen zijn als volgt:

  1. Een aangepast dev-vak maken met behulp van een voorbeeldconfiguratiebestand
  2. Een configuratiebestand schrijven
  3. Een configuratiebestand delen vanuit een codeopslagplaats
  4. Nieuwe taken definiëren in een catalogus
  5. Geheimen uit een Azure Key Vault gebruiken

Belangrijk

Aanpassingen in Microsoft Dev Box zijn momenteel beschikbaar in PREVIEW. Raadpleeg de Aanvullende voorwaarden voor Microsoft Azure-previews voor juridische voorwaarden die van toepassing zijn op Azure-functies die in bèta of preview zijn of die anders nog niet algemeen beschikbaar zijn.

Vereisten

Een aangepast dev-vak maken met behulp van een voorbeeldconfiguratiebestand

Gebruik de standaardcatalogus voor snel starten en een voorbeeldconfiguratiebestand om aan de slag te gaan met aanpassingen.

De snelstartcatalogus toevoegen

Als u een catalogus koppelt aan aanpassingstaken in een ontwikkelaarscentrum, kunt u in dat ontwikkelaarscentrum een ontwikkelvak maken en verwijzen naar de aanpassingstaken uit die catalogus. Microsoft biedt een voorbeeldopslagplaats op GitHub met een standaardset standaardtaken om u te helpen aan de slag te gaan, ook wel de snelstartcatalogus genoemd.

De snelstartcatalogus koppelen aan het ontwikkelaarscentrum:

  1. Meld u aan bij de Ontwikkelaarsportal van Microsoft Dev Box.

  2. Selecteer Catalogs in het linkermenu onder Omgevingsconfiguratie en selecteer vervolgens Toevoegen.

  3. Selecteer in Catalogus toevoegen taken voor het aanpassen van dev-vakken als de snelstartcatalogus. Selecteer vervolgens Toevoegen.

  4. Selecteer Catalogs in uw ontwikkelaarscentrum en controleer of uw catalogus wordt weergegeven.

    Schermopname van Azure Portal met het deelvenster Catalogus toevoegen met de snelstartcatalogus van Microsoft en de aanpassingstaken voor dev-vakken gemarkeerd.

    Als de verbinding is geslaagd, wordt de status weergegeven als Synchronisatie is geslaagd.

Uw aangepaste ontwikkelvak maken

U hebt nu een catalogus die de taken definieert die uw ontwikkelaars kunnen gebruiken. U kunt naar deze taken verwijzen vanuit een configuratiebestand en een aangepast ontwikkelvak maken.

  1. Download een yaml-voorbeeldconfiguratie uit de opslagplaats met voorbeelden. Met deze voorbeeldconfiguratie wordt Visual Studio Code geïnstalleerd en wordt de opslagplaats voor de .NET-web-app Van BoomgaardCore naar uw ontwikkelvak gekloond.

  2. Meld u aan bij de Ontwikkelaarsportal van Microsoft Dev Box.

  3. Selecteer nieuw>ontwikkelaarsvak.

  4. Voer in het vak Een ontwikkelfunctie toevoegen de volgende waarden in en selecteer Vervolgens Doorgaan:

    Instelling Weergegeven als
    Naam Voer een naam in voor uw ontwikkelvak. Namen van dev-vakken moeten uniek zijn binnen een project.
    Project Selecteer een project in de vervolgkeuzelijst.
    Dev Box-pool Selecteer een pool in de vervolgkeuzelijst, die alle dev box-pools voor dat project bevat. Kies een dev box-pool bij u in de buurt voor minimale latentie.
    Aanpassingen toepassen Selecteer Aanpassingen toepassen.

    Schermopname van de opties voor het aanpassen van ontwikkelaarsvakken in de ontwikkelaarsportal met Geüploade aanpassingsbestanden gemarkeerd.

  5. Selecteer op de pagina Uw ontwikkelvak aanpassen de optie Een aanpassingsbestand uploaden en selecteer vervolgens Aanpassingen uit bestand toevoegen.

    Schermopname van de pagina Uw ontwikkelvak aanpassen met Een aanpassingsbestand uploaden en aanpassingen toevoegen uit het bestand gemarkeerd.

  6. Blader naar de locatie van het yaml-voorbeeldconfiguratiebestand dat u hebt gedownload en selecteer vervolgens Openen.

  7. Controleer of het configuratiebestand wordt vermeld onder Een aanpassingsbestand(en) uploaden en selecteer vervolgens Valideren.

    Schermopname van de pagina Uw ontwikkelvak aanpassen met het geüploade aanpassingsbestand weergegeven en Valideren gemarkeerd.

  8. Nadat Dev Box het configuratiebestand heeft gevalideerd, selecteert u Doorgaan.

    Schermopname van het bericht Validatie van aanpassingstaken en Doorgaan gemarkeerd.

  9. Op de overzichtspagina voor het maken van dev-boxs worden in Dev Box de taken weergegeven die moeten worden toegepast. Selecteer Maken.

    Schermopname van de overzichtspagina voor het maken van het dev-vak met de knop Maken gemarkeerd.

Wanneer het aanmaakproces is voltooid, is nodejs en Visual Studio Code in het nieuwe ontwikkelvak geïnstalleerd.

Zie de opslagplaats met voorbeelden van ontwikkelaarscentrums op GitHub voor meer voorbeelden.

Tip

Als alternatief voor de ontwikkelaarsportal kunt u Dev Home gebruiken om ontwikkelvakken te maken, aan te passen en er verbinding mee te maken. Dev Home is een systeemeigen Windows-app die één plek biedt voor het beheren van uw ontwikkelvakken. Meer informatie over Dev Home bij Herbruikbare aanpassingen in dev box maken met Dev Home.

Wat is een configuratiebestand?

Dev Box-aanpassingen maken gebruik van een yaml-bestand om een lijst met taken op te geven die moeten worden toegepast vanuit de catalogus bij het maken van een nieuw ontwikkelvak. Deze configuratiebestanden bevatten een of meer 'taken', waarmee de catalogustaak wordt geïdentificeerd en parameters worden opgegeven, zoals de naam van de software die moet worden geïnstalleerd. Het configuratiebestand wordt vervolgens beschikbaar gesteld aan de ontwikkelaars die nieuwe ontwikkelvakken maken. In het volgende voorbeeld wordt een winget-taak gebruikt om Visual Studio Code te installeren en een git clone taak om een opslagplaats te klonen.

# From https://github.com/microsoft/devcenter-examples
$schema: 1.0
tasks:
  - name: winget
    parameters:
      package: Microsoft.VisualStudioCode
      runAsUser: true
  - name: git-clone
    description: Clone this repository into C:\Workspaces
    parameters:
      repositoryUrl: https://github.com/OrchardCMS/OrchardCore.git
      directory: C:\Workspaces

Wat zijn taken?

Een taak voert een specifieke actie uit, zoals het installeren van software. Elke taak bestaat uit een of meer PowerShell-scripts, samen met een task.yaml-bestand dat parameters biedt en definieert hoe de scripts worden uitgevoerd. U kunt ook een PowerShell-opdracht opnemen in het bestand task.yaml. U kunt een verzameling gecureerde taken opslaan in een catalogus die is gekoppeld aan uw ontwikkelaarscentrum, waarbij elke taak zich in een afzonderlijke map bevindt. Dev Box ondersteunt het gebruik van een GitHub-opslagplaats of een Azure DevOps-opslagplaats als catalogus en scant een opgegeven map van de catalogus recursief om taakdefinities te vinden.

Microsoft biedt een snelstartcatalogus waarmee u aan de slag kunt met aanpassingen. Het bevat een standaardset taken die algemene taken definiëren:

  • Software installeren met WinGet-pakketbeheer.
  • Implementeer de gewenste statusconfiguratie (DSC) met behulp van WinGet-configuratie.
  • Een opslagplaats klonen met behulp van git-clone.
  • Toepassingen configureren zoals het installeren van Visual Studio-extensies.
  • PowerShell-scripts uitvoeren.

Uw ontwikkelvak aanpassen met behulp van bestaande WinGet-configuratiebestanden

WinGet Configuration hanteert een configuratie-as-codebenadering voor het definiëren van de unieke sets software- en configuratie-instellingen die nodig zijn om uw Windows-omgeving in een kant-en-klare codestatus te krijgen. Deze configuratiebestanden kunnen ook worden gebruikt voor het instellen van een Dev Box met behulp van een WinGet-taak die is opgenomen in de eerder genoemde quickstartcatalogus van Microsoft.

In het volgende voorbeeld ziet u een aanpassingsbestand voor dev box dat een bestaand WinGet DSC-bestand aanroept.

tasks:
    - name: winget
      parameters:
          configure: "projectConfiguration.dsc.yaml"

Zie WinGet-configuratie voor meer informatie over WinGet-configuratie.

Vereiste machtigingen voor het configureren van Microsoft Dev Box voor aanpassingen

Als u de acties wilt uitvoeren die nodig zijn om aanpassingen te maken en toe te passen op een ontwikkelvak, hebt u bepaalde machtigingen nodig. In de volgende tabel worden de acties en machtigingen of rollen beschreven die u nodig hebt om aanpassingen te configureren.

Actie Machtiging/rol
Een catalogus koppelen aan een ontwikkelaarscentrum Platformengineer met inzendermachtiging voor het ontwikkelaarscentrum.
De ontwikkelaarsportal gebruiken om een yaml-bestand te uploaden en toe te passen tijdens het maken van een dev box Dev Box-gebruiker
Een configuratiebestand maken Iedereen kan een configuratiebestand maken.
Taken toevoegen aan een catalogus Machtiging om toe te voegen aan de opslagplaats die als host fungeert voor de catalogus.

Een configuratiebestand schrijven

U kunt nieuwe taken definiëren die op uw ontwikkelvakken moeten worden toegepast door uw eigen configuratiebestand te maken. U kunt uw configuratiebestand testen in Visual Studio Code en eventuele vereiste wijzigingen aanbrengen zonder dat u voor elke test een afzonderlijk ontwikkelvak hoeft te maken.

Voordat u uw eigen configuratiebestand kunt maken en testen, moet er een catalogus zijn die taken bevat die zijn gekoppeld aan het ontwikkelaarscentrum. U kunt een Visual Studio Code-extensie gebruiken om de taken in de bijgevoegde catalogus te detecteren.

  1. Maak een Dev Box (of gebruik een bestaande Dev Box) om te testen.

  2. Installeer Visual Studio Code in het test dev-vak en installeer vervolgens de Dev Box v1.2.2 VS Code-extensie.

  3. Download een voorbeeld van een yaml-configuratiebestand uit de opslagplaats met voorbeelden en open het in Visual Studio Code.

  4. Ontdek taken die beschikbaar zijn in de catalogus met behulp van het opdrachtenpalet. Selecteer in het opdrachtenpalet weergeven>de optie Dev Box: Lijst met beschikbare taken voor dit ontwikkelvak.

    Schermopname van Visual Studio Code met het opdrachtenpalet met de beschikbare taken in de Dev Box-lijst voor dit ontwikkelvak gemarkeerd.

  5. Test de configuratie in Visual Studio Code met behulp van f5/opdrachtpalet. Selecteer in het opdrachtenpalet weergeven>de optie Dev Box: Aanpassingstaken toepassen.

    Schermopname van Visual Studio Code met het opdrachtenpalet met Dev Box Aanpassingen toepassen gemarkeerd.

  6. Het configuratiebestand wordt onmiddellijk uitgevoerd, waarbij de opgegeven taken worden toegepast op uw testdev box. Inspecteer de wijzigingen en controleer de Visual Studio Code-terminal op eventuele fouten of waarschuwingen die tijdens de taakuitvoering zijn gegenereerd.

  7. Wanneer het configuratiebestand wordt uitgevoerd, deelt u het met ontwikkelaars om te uploaden wanneer ze een nieuw ontwikkelvak maken.

Tip

Als alternatief voor Visual Studio Code kunt u Dev Home gebruiken om een configuratiebestand in een grafische gebruikersinterface te maken en te valideren. Meer informatie over Dev Home bij Herbruikbare aanpassingen in dev box maken met Dev Home.

Notitie

De mogelijkheid om een bestand te maken en te uploaden is geen beveiligingsrisico; het geüploade bestand kan alleen instellingen toepassen die zijn gedefinieerd in de catalogus die is gekoppeld aan het ontwikkelaarscentrum. Als de taak daar niet is gedefinieerd, krijgt de ontwikkelaar een foutmelding dat de taak niet is gedefinieerd.

Een configuratiebestand delen vanuit een codeopslagplaats

Maak uw configuratiebestand naadloos beschikbaar voor uw ontwikkelaars door de naam workload.yaml te benoemen en te uploaden naar een opslagplaats die toegankelijk is voor de ontwikkelaars, meestal hun coderingsopslagplaats. Wanneer u een ontwikkelaarsvak maakt, geeft u de URL van de opslagplaats op en wordt het configuratiebestand samen met de rest van de opslagplaats gekloond. In het dev-vak wordt in de opslagplaats gezocht naar een bestand met de naam workload.yaml. Als het bestand zich bevindt, worden de vermelde taken uitgevoerd. Deze configuratie biedt een naadloze manier om aanpassingen uit te voeren op een ontwikkelvak.

  1. Maak een configuratiebestand met de naam workload.yaml.

  2. Voeg het configuratiebestand toe aan de hoofdmap van een privéopslagplaats van Azure-opslagplaatsen met uw code en voer het door.

  3. Meld u aan bij de Ontwikkelaarsportal van Microsoft Dev Box.

  4. Selecteer nieuw>ontwikkelaarsvak.

  5. Voer in het vak Een ontwikkelfunctie toevoegen de volgende waarden in en selecteer Vervolgens Doorgaan:

    Instelling Weergegeven als
    Naam Voer een naam in voor uw ontwikkelvak. Namen van dev-vakken moeten uniek zijn binnen een project.
    Project Selecteer een project in de vervolgkeuzelijst.
    Dev Box-pool Selecteer een pool in de vervolgkeuzelijst, die alle dev box-pools voor dat project bevat. Kies een dev box-pool bij u in de buurt voor minimale latentie.
    Aanpassingen toepassen Selecteer Aanpassingen toepassen.

    Schermopname van de opties voor het aanpassen van ontwikkelaarsvakken in de ontwikkelaarsportal met Geüploade aanpassingsbestanden gemarkeerd.

  6. Selecteer op de pagina Uw ontwikkelvak aanpassen de optie Een aanpassingsbestand kiezen in een opslagplaats, voer in de URL van de Azure DevOps-opslagplaats de URL in van de opslagplaats die als host fungeert voor het configuratiebestand dat u wilt toepassen en selecteer vervolgens Doorgaan.

    Schermopname van de pagina Uw ontwikkelaarsvak aanpassen met Een aanpassingsbestand kiezen uit een opslagplaats en DE URL van de Azure DevOps-opslagplaats.

  7. Op de overzichtspagina voor het maken van dev-boxs worden in Dev Box de taken weergegeven die moeten worden toegepast. Selecteer Maken.

Wanneer het aanmaakproces is voltooid, is nodejs en Visual Studio Code in het nieuwe ontwikkelvak geïnstalleerd.

In het nieuwe ontwikkelvak is de opslagplaats gekloond en worden alle instructies uit het configuratiebestand toegepast.

Nieuwe taken definiëren in een catalogus

Door nieuwe taken in een catalogus te maken, kunt u aanpassingen maken die zijn afgestemd op uw ontwikkelteams en kaders toevoegen voor de configuraties die mogelijk zijn.

  1. Maak een opslagplaats om uw taken op te slaan.

    U kunt eventueel een kopie maken van de snelstartcatalogus in uw eigen opslagplaats om te gebruiken als uitgangspunt.

  2. Maak taken in uw opslagplaats door bestaande PowerShell-scripts te wijzigen of nieuwe scripts te maken.

    Als u aan de slag wilt met het maken van taken, kunt u de voorbeelden gebruiken die worden gegeven in de opslagplaats met voorbeelden van ontwikkelaarscentrums op GitHub en PowerShell.

  3. Koppel uw opslagplaats als een catalogus aan uw ontwikkelaarscentrum.

  4. Maak een configuratiebestand voor deze taken door de stappen in Een configuratiebestand schrijven te volgen.

Geheimen uit een Azure Key Vault gebruiken

U kunt geheimen uit uw Azure Key Vault in uw yaml-configuraties gebruiken om privéopslagplaatsen te klonen of met een aangepaste taak die u ontwerpt waarvoor een toegangstoken is vereist.

Als u uw Key Vault-geheimen wilt configureren voor gebruik in uw yaml-configuraties,

  1. Zorg ervoor dat de beheerde identiteit van uw ontwikkelaarscentrumproject de rol Key Vault Reader en Key Vault Secrets User in uw sleutelkluis heeft.

  2. Verdeel de rol Geheimengebruiker voor het Key Vault-geheim aan elke gebruiker of gebruikersgroep die het geheim moet kunnen gebruiken tijdens het aanpassen van een ontwikkelvak. De gebruiker of groep die de rol heeft verleend, moet de beheerde identiteit voor het ontwikkelaarscentrum, uw eigen gebruikersaccount en elke gebruiker of groep die het geheim nodig heeft tijdens het aanpassen van een ontwikkelvak bevatten.

Zie voor meer informatie:

U kunt verwijzen naar het geheim in uw yaml-configuratie in de volgende indeling, met behulp van de git-kloontaak als voorbeeld:

$schema: "1.0"
tasks:
   name: git-clone
   description: Clone this repository into C:\Workspaces
      parameters:
         repositoryUrl: https://myazdo.visualstudio.com/MyProject/_git/myrepo
         directory: C:\Workspaces
         pat: '{{KEY_VAULT_SECRET_URI}}'

Als u een persoonlijke Azure DevOps-opslagplaats (Azure-opslagplaatsen) wilt klonen, hoeft u geen geheim te configureren in Key Vault. In plaats daarvan kunt {{ado}}u , of {{ado://your-ado-organization-name}} als parameter. Hiermee wordt namens u een toegangstoken opgehaald bij het maken van een dev-box, met alleen-lezenmachtigingen voor uw opslagplaats. De git-clone-taak in de quickstart-catalogus gebruikt het toegangstoken om uw opslagplaats te klonen. Hier volgt een voorbeeld:

tasks:
   name: git-clone
   description: Clone this repository into C:\Workspaces
      parameters:
         repositoryUrl: https://myazdo.visualstudio.com/MyProject/_git/myrepo
         directory: C:\Workspaces
         pat: '{{ado://YOUR_ADO_ORG}}'

Als het beleid van uw organisatie vereist dat u uw Key Vault privé van internet houdt, kunt u uw Key Vault zo instellen dat vertrouwde Microsoft-services uw firewallregel overslaan.

Schermopname van azure-firewallconfiguratie met Vertrouwde Microsoft-services toestaan om deze firewall te omzeilen geselecteerd.

Zie Azure Key Vault-netwerkinstellingen configureren voor meer informatie over het toestaan van vertrouwde Microsoft-services om de firewall te omzeilen.