Dela via


Skriva en bilddefinitionsfil för Dev Box-teamanpassningar

Med microsoft Dev Box-anpassningsfunktionen kan du effektivisera installationen av molnbaserade utvecklingsmiljöer. Att få igång utvecklare i ett nytt projekt eller med ett nytt team är ofta komplext och tidskrävande. Med anpassningar kan du konfigurera färdiga arbetsstationer med program, verktyg, lagringsplatser, kodbibliotek, paket och byggskript. Den här artikeln vägleder dig genom processen att skapa, testa och redigera en bilddefinitionsfil för din utvecklingsruta med hjälp av Visual Studio Code.

Det finns två sätt att använda anpassningar i Dev Box. Teamanpassningar skapar en delad konfiguration för ett team med utvecklare. Användaranpassningar skapar en personlig konfiguration för en enskild utvecklare. I följande tabell sammanfattas skillnaderna mellan de två typerna av anpassningar.

Egenskap Teamanpassningar Användaranpassningar
Konfigurera på Pool för utvecklingsboxar Utvecklingslåda
Anpassningar gäller för Alla utvecklingslådor i poolen Enskild utvecklingsmiljö
Lätt att dela Ja Nej
Namn på anpassningsfil Imagedefinition.yaml myfilename.yaml eller Workload.yaml
Hämtas från Katalog Uppladdad eller från en personlig lagringsplats
Stödjer nyckelvalv-hemligheter Ja Ja

Förutsättningar

Behörigheter som krävs för att konfigurera anpassningar

Åtgärd Behörighet/roll
Aktivera kataloger på projektnivå för ett utvecklingscenter. Plattformstekniker med skrivåtkomst till abonnemanget.
Aktivera inställningar för katalogsynkronisering för ett projekt. Plattformstekniker med skrivåtkomst till abonnemanget.
Koppla en katalog till ett projekt. Projektadministratörs- eller deltagarbehörigheter för Dev Center för projektet.
Skapa en bilddefinitionsfil. Inget angivet. Vem som helst kan skapa en bilddefinitionsfil.
Lägg till uppgifter i en katalog. Behörighet att lägga till på den lagringsplats som är värd för katalogen.

Välj en källa för anpassningsuppgifter

Du kan hämta Dev Box-uppgifter från uppgifter som är inbyggda på plattformen eller använda anpassade uppgifter som lagras i en katalog. Välj den källa som bäst överensstämmer med dina anpassningsbehov och projektkrav.

  • Använd inbyggda uppgifter i WinGet och PowerShell. Dev Box dev centers stöder PowerShell- och WinGet-uppgifter direkt. Du kan komma igång med dessa inbyggda uppgifter. Om dina anpassningar endast kräver PowerShell och WinGet fortsätter du med att skapa anpassningsfilen. Mer information finns i Skapa en bilddefinitionsfil.

    Den inbyggda WinGet-uppgiften är inte den körbara WinGet-åtgärden. Den inbyggda WinGet-uppgiften baseras på PowerShell WinGet-cmdleten.

  • Använd en katalog för att definiera anpassade uppgifter. Du kan skapa egna anpassade uppgifter. Om du vill göra anpassade uppgifter tillgängliga för hela organisationen bifogar du en katalog som innehåller anpassade uppgiftsdefinitioner i utvecklingscentret. Dev Box stöder Azure Repos- och GitHub-kataloger. Eftersom uppgifter endast definieras i utvecklingscentret lagrar du uppgifter och bilddefinitioner i separata lagringsplatser.

    Mer information om hur du definierar anpassade uppgifter finns i Skapa uppgifter för Dev Box-teamanpassningar.

Skapa bilddefinitioner på projektnivå

Projekt kan hjälpa dig att hantera Dev Box-resurser effektivt. Genom att tilldela varje utvecklarteam ett eget projekt kan du organisera resurser effektivt. Du kan skapa flera avbildningsdefinitioner i kataloglagringsplatsen, var och en i sin egen mapp för att rikta in sig på olika utvecklarteam under projektet.

Tilldela behörigheter för projektadministratörer

Om du vill koppla en katalog till ett projekt måste du ha projektadministratörs- eller deltagarbehörighet för projektet. Information om hur du tilldelar projektadministratörsbehörighet finns i Bevilja administrativ åtkomst till Dev Box-projekt.

Aktivera kataloger på projektnivå

Du måste aktivera kataloger på projektnivå på utvecklingscenternivå innan du kan lägga till en katalog i ett projekt. Så här aktiverar du användning av kataloger på projektnivå på utvecklingscenternivå:

  1. I Azure Portal går du till utvecklingscentret.

  2. På den vänstra menyn går du till Inställningar och väljer Inställningar för Dev Center.

  3. Under Kataloger på projektnivå väljer du Aktivera kataloger per projekt och sedan Använd.

    Skärmbild som visar sidan Inställningar för Dev Center med fönstret Kataloger på projektnivå öppet och alternativet Aktivera kataloger per projekt valt.

Mer information om hur du lägger till kataloger i projekt finns i Lägga till och konfigurera en katalog från GitHub eller Azure Repos.

Skapa en bilddefinitionsfil

Du kan skapa och testa bilddefinitionsfiler med hjälp av Visual Studio Code. Förutom att använda de inbyggda uppgifterna kan du använda Dev Box-tillägget i Visual Studio Code för att identifiera de anpassade uppgifter som är tillgängliga via utvecklingscentret.

  1. Skapa en utvecklingsruta (eller använd en befintlig utvecklingsruta) för testning.

  2. Installera Visual Studio Code i test-utvecklingsrutan och installera sedan Dev Box-tillägget.

  3. Ladda ned en yaml-exempelbilddefinitionsfil från exempellagringsplatsen. Öppna den i Visual Studio Code.

  4. Identifiera de uppgifter som är tillgängliga i katalogen med hjälp av kommandopaletten. Välj Visa>kommandopaletten>Dev Box: Lista tillgängliga uppgifter för den här dev boxen.

    Skärmbild som visar Visual Studio Code-kommandopaletten med alternativet Dev Box: List Available Tasks For This Dev Box valt.

  5. Testa anpassningen i Visual Studio Code med hjälp av kommandopaletten. Välj Visa>Kommandopalett>Utvecklingsruta: Tillämpa anpassningsuppgifter.

    Skärmbild som visar Visual Studio Code-kommandopaletten med alternativet Dev Box: Apply Customizations Tasks valt.

  6. Bilddefinitionsfilen körs och tillämpar de angivna uppgifterna på testutvecklingsrutan. Granska ändringarna och kontrollera Visual Studio Code-terminalen om det finns fel eller varningar som genererats under aktivitetskörningen.

  7. När bilddefinitionsfilen körs laddar du upp den till katalogen.

Systemuppgifter och användaruppgifter

Du kan använda både system- och användaruppgifter i bilddefinitionsfilen. Avsnittet "uppgifter" i bilddefinitionsfilen är uppdelat i följande sektioner. Båda avsnitten delar samma parametrar baserat på uppgiftsdefinitionerna i katalogen.

  • Systemaktiviteter: Dessa uppgifter körs som LocalSystem under etableringsfasen i utvecklingsmiljön. De används vanligtvis för konfigurationer på systemnivå, till exempel installation av programvara eller konfiguration av systeminställningar som kräver administratörsbehörighet.
  • Användaruppgifter: Dessa uppgifter körs som användare efter användarens första inloggning i utvecklingsrutan. De används vanligtvis för konfigurationer på användarnivå, till exempel för att installera användarspecifika program eller konfigurera användarinställningar i användarkontext. Användare föredrar till exempel ofta att installera Python och Visual Studio Code under användarkontext i stället för systemomfattande. Placera WinGet-uppgifter i avsnittet userTasks för bättre resultat när de inte fungerar under aktiviteter.

Standardanvändare som konfigurerar användaranpassningar kan endast använda användaruppgifter. De kan inte använda systemfunktioner.

Valfritt: Anpassa utvecklingsrutan med hjälp av befintliga desired state configuration-filer

Desired State Configuration (DSC) är en hanteringsplattform i PowerShell som gör att du kan hantera utvecklingsmiljön med konfiguration som kod. Du kan använda DSC för att definiera önskat tillstånd för din utvecklingsruta, inklusive programvaruinstallationer, konfigurationer och inställningar.

Du kan också använda DSC-konfigurationsfiler för att konfigurera en utvecklingsruta med hjälp av en inbyggd WinGet-uppgift.

I följande exempel visas en dev box-bilddefinitionsfil som anropar en befintlig WinGet DSC-fil:

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

Mer information finns i WinGet-konfiguration.

Konfigurera inställningar för katalogsynkronisering för projektet

Konfigurera projektet för att synkronisera bilddefinitioner från katalogen. Med den här inställningen kan du använda avbildningsdefinitionerna i katalogen för att skapa dev box-pooler.

  1. Logga in på Azure-portalen.

  2. I sökrutan anger du projekt. I listan med resultat väljer du Projekt.

  3. Öppna Dev Box-projektet som du vill konfigurera inställningar för katalogsynkronisering för.

  4. Välj Kataloger.

  5. Välj Synkroniseringsinställningar.

    Skärmbild som visar fönstret Kataloger i Azure-portalen med knappen för synkroniseringsinställningar markerad.

  6. I fönstret Synkroniseringsinställningar väljer du Bilddefinitioner och sedan Spara.

    Skärmbild som visar fönstret för synkroniseringsinställningar i Azure-portalen med kryssrutan för bilddefinitioner markerad.

Bifoga en katalog som innehåller definitionsfilen

Innan du kan använda en anpassningsfil som en bilddefinition måste du bifoga en katalog som innehåller definitionsfilen i utvecklingscentret eller projektet. Katalogen kan komma från GitHub eller Azure Repos.

I fönstret Bilddefinitioner visas de bilddefinitioner som ditt projekt kan komma åt.

Skärmbild som visar fönstret i Azure-portalen som visar tillgängliga bilddefinitioner för ett projekt.

Mer information om hur du kopplar kataloger finns i Lägga till och konfigurera en katalog från GitHub eller Azure Repos.

Konfigurera en dev box-pool för att använda en bilddefinition

Gör anpassningar tillgängliga för dina utvecklingsteam genom att konfigurera en dev box-pool för att använda en anpassningsfil (imagedefinition.yaml). Lagra anpassningsfilen på en lagringsplats som är länkad till en katalog i ditt utvecklingscenter eller projekt. Ange den här filen som bilddefinition för poolen och anpassningarna tillämpas på nya dev-rutor.

Följande steg visar hur du skapar en dev box-pool och anger en bilddefinition:

  1. Logga in på Azure-portalen.

  2. I sökrutan anger du projekt. I listan med resultat väljer du Projekt.

  3. Öppna Dev Box-projektet som du vill associera den nya dev box-poolen med.

  4. Välj Dev box-pooler och klicka sedan på Skapa.

  5. I fönstret Skapa en utvecklingspool anger du följande värden:

    Inställning Värde
    Namn Ange ett namn för poolen. Poolnamnet är synligt för utvecklare att välja när de skapar utvecklingsrutor. Den måste vara unik i ett projekt.
    Definition Den här rutan visar bilddefinitioner från tillgängliga kataloger och dev box-definitioner. Välj en bilddefinitionsfil.
    Nätverksanslutning Välj Distribuera till ett Microsoft-värdbaserat nätverk eller använd en befintlig nätverksanslutning.
    Aktivera enkel inloggning Välj Ja för att aktivera enkel inloggning för utvecklingsrutorna i den här poolen. Enkel inloggning måste konfigureras för organisationen. Mer information finns i Aktivera enkel inloggning för dev-rutor.
    Skaparbehörigheter för Dev box Välj Lokal administratör eller Standardanvändare.
    Aktivera automatiskt stopp Ja är standardvärdet. Välj Nej om du vill inaktivera ett autostoppschema. Du kan konfigurera ett autostoppschema när poolen har skapats.
    Stoppa tiden Välj en tid för att stänga av alla utvecklingsmiljöer i poolen.
    Tidszon Välj den tidszon som stopptiden är i.
    Licensiering Markera den här kryssrutan för att bekräfta att din organisation har Azure Hybrid-förmånslicenser som du vill använda för utvecklingsmiljöerna i den här poolen.

    Skärmbild som visar fönstret för att skapa en dev box-pool.

  6. Välj Skapa.

  7. Kontrollera att den nya dev box-poolen visas i listan. Du kan behöva uppdatera skärmen.

Skapa en utvecklingsruta med hjälp av utvecklarportalen

Om du vill kontrollera att anpassningar från bilddefinitionsfilen tillämpas skapar du en utvecklingsruta i Utvecklarportalen för Dev Box. Följ stegen i Snabbstart: Skapa och anslut till en utvecklingsruta med hjälp av Utvecklarportalen för Dev Box. Anslut sedan till den nyligen skapade utvecklingsrutan och kontrollera att anpassningarna fungerar som förväntat.

Du kan göra justeringar i anpassningsfilen och skapa en ny utvecklingsruta för att testa ändringarna. När du är säker på att anpassningarna är korrekta kan du skapa en återanvändbar avbildning.

Nästa steg

Nu när du har en bilddefinitionsfil laddar du upp den till en katalog och kopplar katalogen till ett projekt. Bilddefinitionsfilen används för att konfigurera och skapa utvecklingsrutor för dina utvecklingsteam.