Share via


Újrafelhasználható dev box testreszabások létrehozása

A Microsoft Dev Box testreszabása egy kódként való konfigurációs módszer a fejlesztői dobozok testreszabásához. Ebből a cikkből megtudhatja, hogyan szabhatja testre a fejlesztői mezőket egy feladatkatalógus és egy konfigurációs fájl használatával szoftverek telepítéséhez, bővítmények hozzáadásához, tárházak klónozásához stb. Ezeket a feladatokat a létrehozási folyamat utolsó szakaszában alkalmazza a rendszer az új fejlesztői mezőre. Egyéni virtuálisgép-rendszerkép létrehozása nélkül is hozzáadhat beállításokat és szoftvereket.

A testreszabások hasznosak a fejlesztői csapatok számára. A fejlesztői csapat érdeklődői testreszabásokkal előre konfigurálhatják az adott fejlesztői csapathoz szükséges szoftvereket, és olyan konfigurációs fájlokat hozhatnak létre, amelyek csak a csapatuk számára releváns feladatokat alkalmazzák. Ez a módszer lehetővé teszi a fejlesztők számára, hogy a munkájuknak leginkább megfelelő fejlesztői mezőket hozzanak létre anélkül, hogy módosításokat kellene kérniük az informatikai csapattól, vagy megvárhatják, amíg a mérnöki csapat létrehoz egy egyéni virtuálisgép-rendszerképet.

A testreszabások használatával automatizálhatja a gyakori beállítási lépéseket, időt takaríthat meg, és csökkentheti a konfigurációs hibák esélyét. Néhány példafeladat:

  • Szoftver telepítése a WinGet csomagkezelővel.
  • Az operációs rendszer beállításainak beállítása, például a Windows-szolgáltatások engedélyezése.
  • Alkalmazások konfigurálása, például Visual Studio-bővítmények telepítése.

A testreszabások fázisokban is alkalmazhatók, egyszerű, de funkcionális konfigurációtól kezdve egy automatizált folyamatig. A szakaszok a következők:

  1. Testreszabott fejlesztői mező létrehozása példakonfigurációs fájl használatával
  2. Konfigurációs fájl írása
  3. Konfigurációs fájl megosztása kódtárból
  4. Új feladatok definiálása katalógusban
  5. Titkos kódok használata Azure Key Vaultból

Fontos

A Microsoft Dev Box testreszabásai jelenleg előzetes verzióban érhetők el. A bétaverziójú, előzetes verziójú vagy másként még általánosan nem elérhető Azure-szolgáltatások jogi feltételeit lásd: Kiegészítő használati feltételek a Microsoft Azure előzetes verziójú termékeihez.

Előfeltételek

Testreszabott fejlesztői mező létrehozása példakonfigurációs fájl használatával

A testreszabások első lépéseihez használja az alapértelmezett gyorsindítási katalógust és egy példakonfigurációs fájlt.

A gyorsindítási katalógus csatolása

Ha testre szabási feladatokat tartalmazó katalógust csatol egy fejlesztői központhoz, az azt jelenti, hogy létrehozhat egy fejlesztői mezőt a fejlesztői központban, és hivatkozhat a katalógus testreszabási tevékenységeire. A Microsoft egy mintaadattárat biztosít a GitHubon, amely egy szabványos alapértelmezett feladatkészlettel segíti az első lépéseket, más néven a gyorsindítási katalógust.

A gyorsindítási katalógus csatolása a fejlesztői központhoz:

  1. Jelentkezzen be a Microsoft Dev Box fejlesztői portálra.

  2. A környezetkonfiguráció bal oldali menüjében válassza a Katalógusok, majd a Hozzáadás lehetőséget.

  3. A Katalógus hozzáadása területen válassza a Dev box testreszabási feladatait gyorsindítási katalógusként. Ezután válassza a Hozzáadás lehetőséget.

  4. A fejlesztői központban válassza a Katalógusok lehetőséget, és ellenőrizze, hogy megjelenik-e a katalógus.

    Képernyőkép az Azure Portalról, amelyen a Katalógus hozzáadása panel látható, amelyen a Microsoft gyorsindítási katalógusa és a Dev box testreszabási feladatai láthatók.

    Ha a kapcsolat sikeres, az Állapot sikeres szinkronizálásként jelenik meg.

A testreszabott fejlesztői mező létrehozása

Most már rendelkezik egy katalógussal, amely meghatározza a fejlesztők által használható feladatokat. Ezekre a feladatokra hivatkozhat egy konfigurációs fájlból, és létrehozhat egy testreszabott fejlesztői mezőt.

  1. Töltsön le egy yaml-példakonfigurációt a mintaadattárból. Ez a példakonfiguráció telepíti a Visual Studio Code-ot, és klónozza az OrchardCore .NET webalkalmazás-adattárat a fejlesztői mezőbe.

  2. Jelentkezzen be a Microsoft Dev Box fejlesztői portálra.

  3. Válassza az Új>dev box lehetőséget.

  4. A Fejlesztő hozzáadása mezőbe írja be a következő értékeket, majd válassza a Folytatás lehetőséget:

    Beállítás Érték
    Név Adja meg a fejlesztői mező nevét. A fejlesztői mezőneveknek egyedinek kell lenniük egy projekten belül.
    Projekt Válasszon ki egy projektet a legördülő listából.
    Fejlesztői dobozkészlet Válasszon ki egy készletet a legördülő listából, amely tartalmazza a projekt összes fejlesztői készletét. Válasszon egy Önhöz közeli fejlesztői készletet a minimális késés érdekében.
    Testreszabások alkalmazása Válassza a Testreszabások alkalmazása lehetőséget.

    Képernyőkép a fejlesztői portál fejlesztői portálon elérhető testreszabási lehetőségeiről, kiemelve a feltöltött testreszabási fájlokat.

  5. A Fejlesztés testreszabása lapon válassza a Testreszabási fájl feltöltése, majd a Testreszabások hozzáadása fájlból lehetőséget.

    Képernyőkép a Fejlesztés testreszabása lapról, amelyen egy testreszabási fájl feltöltése és a testreszabások hozzáadása a fájlból kiemelve látható.

  6. Keresse meg a letöltött yaml-konfigurációs példafájl helyét, majd válassza a Megnyitás lehetőséget.

  7. Ellenőrizze, hogy a konfigurációs fájl szerepel-e a Testreszabási fájl(ok) feltöltése területen, majd válassza az Ellenőrzés lehetőséget.

    Képernyőkép a dev box testreszabása lapról, amelyen a feltöltött testreszabási fájl látható, és az Ellenőrzés ki van emelve.

  8. Miután a Dev Box érvényesítette a konfigurációs fájlt, válassza a Folytatás lehetőséget.

    Képernyőkép a Testreszabási feladat érvényesítésének sikerességével kapcsolatos üzenetről, és a Folytatás kiemelése.

  9. A Dev Box létrehozási összefoglaló lapján a Dev Box megjeleníti azokat a feladatokat, amelyeket alkalmazni fog. Válassza a Létrehozás lehetőséget.

    Képernyőkép a Dev box létrehozási összefoglaló oldalról, kiemelve a Létrehozás gombot.

Amikor a létrehozási folyamat befejeződött, az új dev boxban nodejs és Visual Studio Code van telepítve.

További példákért tekintse meg a GitHubon található dev center-példák adattárát.

Tipp.

A fejlesztői portál alternatívaként a Fejlesztői főoldal használatával hozhat létre, szabhat testre és csatlakozhat a fejlesztői mezőkhöz. Fejlesztői főoldal egy natív Windows-alkalmazás, amely egyetlen helyet biztosít a fejlesztői mezők kezeléséhez. További információ a Fejlesztői főoldal a Fejlesztői főoldal használatával használható, újrafelhasználható fejlesztői dobozok testreszabásáról.

Mi az a konfigurációs fájl?

A Dev Box testreszabásai yaml formátumú fájllal adhatók meg a katalógusból egy új dev box létrehozásakor alkalmazandó feladatok listája. Ezek a konfigurációs fájlok egy vagy több "feladatot" tartalmaznak, amelyek azonosítják a katalógusfeladatot, és olyan paramétereket adnak meg, mint a telepíteni kívánt szoftver neve. A konfigurációs fájl ezután elérhetővé válik az új fejlesztői mezőket létrehozó fejlesztők számára. Az alábbi példa egy winget-feladatot használ a Visual Studio Code telepítéséhez, és egy git clone feladatot egy adattár klónozásához.

# 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

Mik azok a tevékenységek?

A feladatok egy adott műveletet hajtanak végre, például szoftvertelepítést. Minden feladat egy vagy több PowerShell-szkriptből, valamint egy task.yaml fájlból áll, amely paramétereket biztosít, és meghatározza a szkriptek futását. A task.yaml fájlba PowerShell-parancsot is felvehet. A válogatott feladatok gyűjteményét a fejlesztői központhoz csatolt katalógusban tárolhatja, és mindegyik feladat külön mappában található. A Dev Box támogatja a GitHub-adattár vagy az Azure DevOps-adattár katalógusként való használatát, és rekurzívan megvizsgálja a katalógus egy adott mappáját a feladatdefiníciók kereséséhez.

A Microsoft gyors üzembe helyezési katalógust biztosít a testreszabások megkezdéséhez. A gyakori feladatokat meghatározó alapértelmezett feladatkészletet tartalmazza:

  • Szoftver telepítése a WinGet csomagkezelővel.
  • Helyezze üzembe a kívánt állapotkonfigurációt (DSC) a WinGet Configuration használatával.
  • Adattár klónozása git-clone használatával.
  • Alkalmazások konfigurálása, például Visual Studio-bővítmények telepítése.
  • PowerShell-szkriptek futtatása.

A fejlesztői mező testreszabása meglévő WinGet-konfigurációs fájlok használatával

A WinGet Configuration konfigurációs megoldással definiálja a Windows-környezet kódra kész állapotba hozásához szükséges egyedi szoftver- és konfigurációs beállításokat. Ezek a konfigurációs fájlok dev box beállítására is használhatók a Microsoft által korábban említett rövid útmutatókatalógusban található WinGet-feladattal.

Az alábbi példa egy meglévő WinGet DSC-fájlt meghívó dev box testreszabási fájlt mutat be.

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

A WinGet-konfigurációval kapcsolatos további információkért lásd a WinGet-konfigurációt.

A Microsoft Dev Box testreszabásokhoz való konfigurálásához szükséges engedélyek

A testreszabások fejlesztői mezőre történő létrehozásához és alkalmazásához szükséges műveletek végrehajtásához bizonyos engedélyekre van szükség. Az alábbi táblázat a testreszabások konfigurálásához szükséges műveleteket és engedélyeket vagy szerepköröket ismerteti.

Művelet Engedély/szerepkör
Katalógus csatolása fejlesztői központhoz Platformmérnök a fejlesztői központ közreműködői engedélyével.
Yaml-fájl feltöltése és alkalmazása a fejlesztői portál használatával a dev box létrehozásakor Dev Box-felhasználó
Konfigurációs fájl létrehozása A konfigurációs fájlokat bárki létrehozhatja.
Tevékenységek hozzáadása katalógushoz Engedély a katalógust üzemeltető adattárhoz való hozzáadáshoz.

Konfigurációs fájl írása

A fejlesztői mezőkre alkalmazandó új feladatokat saját konfigurációs fájl létrehozásával határozhatja meg. A konfigurációs fájlt tesztelheti a Visual Studio Code-ban, és anélkül végezheti el a szükséges módosításokat, hogy minden teszthez külön fejlesztői mezőt kellene létrehoznia.

A saját konfigurációs fájl létrehozása és tesztelése előtt rendelkeznie kell egy katalógussal, amely a fejlesztői központhoz csatolt feladatokat tartalmazza. A Visual Studio Code-bővítmény használatával felderítheti a csatolt katalógusban szereplő feladatokat.

  1. Hozzon létre egy Dev Boxot (vagy használjon egy meglévő Dev Boxot) a teszteléshez.

  2. A teszt dev boxban telepítse a Visual Studio Code-ot, majd telepítse a Dev Box v1.2.2 VS Code bővítményt.

  3. Töltsön le egy yaml-konfigurációs példát a mintaadattárból, és nyissa meg a Visual Studio Code-ban.

  4. A parancskatalógus használatával felderítheti a katalógusban elérhető feladatokat. A Parancskatalógus megtekintése>területen válassza a Dev Box: List available tasks for this dev box (A fejlesztői mező elérhető feladatainak listája) lehetőséget.

    Képernyőkép a Visual Studio Code-ról, amelyen a parancskatalógus látható, és a Dev Box List elérhető feladatai kiemelve jelennek meg a dev boxban.

  5. Tesztelje a konfigurációt a Visual Studio Code-ban az f5/command palette használatával. A Parancskatalógus megtekintése>területen válassza a Dev Box: Testreszabási feladatok alkalmazása lehetőséget.

    Képernyőkép a Visual Studio Code-ról, amelyen a parancskatalógus látható, kiemelve a Dev Box Apply testreszabási feladatokat.

  6. A konfigurációs fájl azonnal fut, és a megadott feladatokat alkalmazza a teszt fejlesztői mezőjére. Vizsgálja meg a módosításokat, és ellenőrizze a Visual Studio Code terminálját, hogy vannak-e hibák vagy figyelmeztetések a feladat végrehajtása során.

  7. Ha a konfigurációs fájl sikeresen fut, ossza meg a fejlesztőkkel, hogy feltöltse őket egy új fejlesztői mező létrehozásakor.

Tipp.

A Visual Studio Code alternatívaként a Fejlesztői főoldal használatával létrehozhat és érvényesíthet egy konfigurációs fájlt egy grafikus felhasználói felületen. További információ a Fejlesztői főoldal a Fejlesztői főoldal használatával használható, újrafelhasználható fejlesztői dobozok testreszabásáról.

Feljegyzés

A fájlok létrehozásának és feltöltésének lehetősége nem jelent biztonsági kockázatot; a feltöltött fájl csak a fejlesztői központhoz csatolt katalógusban meghatározott beállításokat alkalmazhatja. Ha a feladat nincs definiálva, a fejlesztő hibaüzenetet kap, amely szerint a tevékenység nincs definiálva.

Konfigurációs fájl megosztása kódtárból

A konfigurációs fájl zökkenőmentesen elérhetővé tétele a fejlesztők számára a workload.yaml elnevezésével és a fejlesztők számára elérhető adattárba való feltöltésével, általában a kódolási tárházukkal. Fejlesztői mező létrehozásakor meg kell adnia az adattár URL-címét, és a konfigurációs fájl klónozása a többi adattárkal együtt történik. A Dev Box megkeresi az adattárat egy workload.yaml nevű fájlban, és ha van ilyen, végrehajtja a felsorolt feladatokat. Ez a konfiguráció zökkenőmentes módot biztosít a testreszabások elvégzésére egy fejlesztői dobozon.

  1. Hozzon létre egy workload.yaml nevű konfigurációs fájlt.

  2. Adja hozzá a konfigurációs fájlt egy privát Azure-adattár gyökeréhez a kóddal, és véglegesítse azt.

  3. Jelentkezzen be a Microsoft Dev Box fejlesztői portálra.

  4. Válassza az Új>dev box lehetőséget.

  5. A Fejlesztő hozzáadása mezőbe írja be a következő értékeket, majd válassza a Folytatás lehetőséget:

    Beállítás Érték
    Név Adja meg a fejlesztői mező nevét. A fejlesztői mezőneveknek egyedinek kell lenniük egy projekten belül.
    Projekt Válasszon ki egy projektet a legördülő listából.
    Fejlesztői dobozkészlet Válasszon ki egy készletet a legördülő listából, amely tartalmazza a projekt összes fejlesztői készletét. Válasszon egy Önhöz közeli fejlesztői készletet a minimális késés érdekében.
    Testreszabások alkalmazása Válassza a Testreszabások alkalmazása lehetőséget.

    Képernyőkép a fejlesztői portál fejlesztői portálon elérhető testreszabási lehetőségeiről, kiemelve a feltöltött testreszabási fájlokat.

  6. A Dev box testreszabása lapon válassza a Testreszabási fájl kiválasztása egy adattárból lehetőséget, az Azure DevOps-adattár URL-címében adja meg annak az adattárnak az URL-címét, amely az alkalmazni kívánt konfigurációs fájlt tárolja, majd válassza a Folytatás lehetőséget.

    Képernyőkép a Dev box testreszabása lapról az adattárból és az Azure DevOps-adattár URL-címéből származó testreszabási fájl kiválasztásával.

  7. A Dev Box létrehozási összefoglaló lapján a Dev Box megjeleníti azokat a feladatokat, amelyeket alkalmazni fog. Válassza a Létrehozás lehetőséget.

Amikor a létrehozási folyamat befejeződött, az új dev boxban nodejs és Visual Studio Code van telepítve.

Az új dev boxban az adattár klónozva van, és a konfigurációs fájl minden utasítása alkalmazva van.

Új feladatok definiálása katalógusban

Új feladatok katalógusban való létrehozása lehetővé teszi, hogy a fejlesztői csapatokra szabott testreszabásokat hozzon létre, és a lehetséges konfigurációkhoz védőkorlátokat adjon hozzá.

  1. Hozzon létre egy adattárat a feladatok tárolásához.

    Igény szerint készíthet másolatot a gyorsindítási katalógusról a saját adattárában, hogy kiindulási pontként használhassa.

  2. Hozzon létre feladatokat az adattárban a meglévő PowerShell-szkriptek módosításával vagy új szkriptek létrehozásával.

    A feladatok létrehozásának első lépéseihez használhatja a GitHubon és a PowerShell dokumentációjában található dev center-példák adattárában szereplő példákat.

  3. Csatolja az adattárat a fejlesztői központhoz katalógusként.

  4. Hozzon létre egy konfigurációs fájlt ezekhez a feladatokhoz a konfigurációs fájl írása lépésekkel.

Titkos kódok használata Azure Key Vaultból

Az Azure Key Vault titkos kulcsait a yaml-konfigurációkban használhatja magánadattárak klónozásához, vagy bármely olyan egyéni feladattal, amelyhez hozzáférési jogkivonatra van szükség.

A Key Vault titkos kulcsait a yaml-konfigurációkban való használatra konfigurálhatja,

  1. Győződjön meg arról, hogy a fejlesztői központ projektjének felügyelt identitása rendelkezik a Key Vault Olvasó és a Key Vault titkos kulcsfelhasználói szerepkörével a kulcstartón.

  2. Adja meg a Kulcstartó titkos kulcsának titkos kulcsfelhasználói szerepkörét minden olyan felhasználónak vagy felhasználói csoportnak, akinek képesnek kell lennie a titkos kód felhasználására a fejlesztői mező testreszabása során. A szerepkört kapott felhasználónak vagy csoportnak tartalmaznia kell a fejlesztői központ felügyelt identitását, a saját felhasználói fiókját, valamint minden olyan felhasználót vagy csoportot, akinek szüksége van a titkos kódra a fejlesztői doboz testreszabása során.

További információk:

A yaml-konfiguráció titkos kódjára a következő formátumban hivatkozhat, példaként a git-clone feladatot használva:

$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}}'

Ha privát Azure DevOps-adattárat (Azure Repos) szeretne klónozni, nem kell titkos kulcsot konfigurálnia a Key Vaultban. Ehelyett használhatja {{ado}}vagy {{ado://your-ado-organization-name}} paraméterként is használhatja. Ez lekéri a hozzáférési jogkivonatot az Ön nevében egy fejlesztői mező létrehozásakor, amely írásvédett engedéllyel rendelkezik az adattárhoz. A rövid útmutatókatalógus git-klónozási feladata a hozzáférési jogkivonat használatával klónozza az adattárat. Példa:

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}}'

Ha a szervezet szabályzatai megkövetelik, hogy a Key Vault privát maradjon az internetről, beállíthatja a Key Vaultot, hogy a megbízható Microsoft-szolgáltatások megkerüljék a tűzfalszabályt.

Képernyőkép az Azure-tűzfal konfigurációjáról, amelyen a megbízható Microsoft-szolgáltatások kihagyhatja ezt a tűzfalat.

Ha tudni szeretné, hogyan engedélyezheti a megbízható Microsoft-szolgáltatások a tűzfal megkerülését, olvassa el az Azure Key Vault hálózati beállításainak konfigurálásával foglalkozó témakört.