Megosztás a következőn keresztül:


A Docker használata az Azure Stack Hubhoz készült PowerShell futtatásához

Ebben a cikkben a Docker használatával hozhat létre egy tárolót, amelyen futtathatja a PowerShell különböző felületekkel való használatához szükséges verzióját. Az AzureRM-modulok és a legújabb Az-modulok használatára vonatkozó utasításokat is megtalálja. Az AzureRM-hez Windows-alapú tároló szükséges. Az Az Linux-alapú tárolót használ.

Docker-előfeltételek

A Docker telepítése

  1. Telepítse a Dockert.

  2. Egy parancssori programban, például a PowerShellben vagy a Bashben adja meg a következőt:

    docker --version
    

Szolgáltatásnév beállítása a PowerShell használatához

Ahhoz, hogy a PowerShell használatával hozzáférjen az Azure Stack Hub erőforrásaihoz, szüksége van egy szolgáltatásnévre a Microsoft Entra-bérlőben. Engedélyeket delegálhat felhasználói szerepköralapú hozzáférés-vezérléssel (RBAC). Előfordulhat, hogy a szolgáltatásnevet a felhőszolgáltatótól kell kérnie.

  1. A szolgáltatásnév beállításához kövesse az alkalmazások Azure Stack Hub-erőforrásokhoz való hozzáférésének biztosítása szolgáltatásnevek létrehozásával című témakör utasításait.

  2. Jegyezze fel az alkalmazásazonosítót, a titkos kulcsot, a bérlőazonosítót és az objektumazonosítót későbbi használatra.

A PowerShell futtatása a Dockerben

Ezekben az utasításokban egy Linux-alapú tárolórendszerképet fog futtatni, amely tartalmazza a PowerShellt és az Azure Stack Hubhoz szükséges modulokat.

  1. Linux-tárolóval kell futtatnia a Dockert. A Docker futtatásakor váltson Linux-tárolókra.

  2. Futtassa a Dockert egy olyan gépről, amely ugyanahhoz a tartományhoz csatlakozik, mint az Azure Stack Hub. Ha az Azure Stack Development Kitet (ASDK) használja, telepítse a VPN-t a távoli gépére.

Az Azure Stack Hub Az modul telepítése Linux-tárolóra

  1. A parancssorból futtassa a következő Docker-parancsot a PowerShell Ubuntu-tárolóban való futtatásához:

    docker run -it mcr.microsoft.com/azurestack/powershell
    

    Futtathatja az Ubuntu-t vagy a Debiant. Az alábbi Docker-fájlokat a GitHub-adattárban, az azurestack-powershellben találja. A Docker-fájlok legújabb módosításait a GitHub-adattárban érheti el. Minden operációs rendszer címkézve van. Cserélje le a kettőspont utáni szakasz címkéjét a kívánt operációs rendszer címkéjére.

    Linux Docker-rendszerkép
    Ubuntu docker run -it mcr.microsoft.com/azurestack/powershell:ubuntu-18.04
    Debian docker run -it mcr.microsoft.com/azurestack/powershell:debian-9
  2. A rendszerhéj készen áll a parancsmagokra. Tesztelje a rendszerhéj-kapcsolatot a bejelentkezéssel, majd a futtatással Test-AzureStack.ps1.

    Először hozza létre a szolgáltatásnév hitelesítő adatait. Szüksége lesz a titkos kódra és az alkalmazásazonosítóra. A tároló ellenőrzéséhez az objektumazonosítóra is szüksége lesz a Test-AzureStack.ps1 tároló futtatásakor. Előfordulhat, hogy szolgáltatásnevet kell kérnie a felhőszolgáltatótól.

    A szolgáltatáselvű objektum létrehozásához írja be a következő parancsmagokat:

    $passwd = ConvertTo-SecureString <Secret> -AsPlainText -Force
    $pscredential = New-Object System.Management.Automation.PSCredential('<ApplicationID>', $passwd)
    
  3. Csatlakozzon a környezetéhez a következő szkript futtatásával az Azure Stack Hub-példány következő értékeivel.

    Érték Leírás
    A környezet neve. Az Azure Stack Hub-környezet neve.
    Resource Manager-végpont A Resource Manager URL-címe. Ha nem tudja, forduljon a felhőszolgáltatójához. A következőhöz hasonlóan fog kinézni: https://management.region.domain.com.
    Címtár-bérlő azonosítója Az Azure Stack Hub-bérlői címtár azonosítója.
    Hitelesítő adat A szolgáltatásnevet tartalmazó objektum. Ebben az esetben $pscredential.
    ./Login-Environment.ps1 -Name <String> -ResourceManagerEndpoint <resource manager endpoint> -DirectoryTenantId <String> -Credential $pscredential
    

    A PowerShell visszaadja a fiókobjektumot.

  4. A környezet teszteléséhez futtassa a Test-AzureStack.ps1 szkriptet a tárolóban. Adja meg a szolgáltatásnév objektumazonosítóját. Ha nem jelöli meg az objektumazonosítót, a szkript továbbra is fut, de csak teszteli a bérlői (felhasználói) modulokat, és rendszergazdai jogosultságot igénylő modulokon meghiúsul.

    ./Test-AzureStack.ps1 <Object ID>
    

Következő lépések