Docker kullanarak PowerShell'i Azure Stack Hub
Bu makalede Docker'ı kullanarak çeşitli arabirimlerle çalışmak için gereken PowerShell sürümünü çalıştıracak bir kapsayıcı oluşturabilirsiniz. Hem AzureRM modüllerini hem de en son Az modüllerini kullanma yönergelerini bulabilirsiniz. AzureRM, Windows tabanlı bir kapsayıcı gerektirir. Az, Linux tabanlı bir kapsayıcı kullanır.
Docker önkoşulları
Docker'ı yükleme
PowerShell veya Bash gibi bir komut satırı programına şunları girin:
docker --version
PowerShell kullanmak için hizmet sorumlusu ayarlama
PowerShell'i kullanarak Azure Stack Hub için Azure Active Directory (Azure AD) kiracınıza bir hizmet sorumlusu gerekir. Kullanıcı rol tabanlı erişim denetimi (RBAC) ile izinleri temsilci olarak temsilci olarak alırsınız. Bulut operatörünüzden hizmet sorumlusu isteğide bulundurabilirsiniz.
Hizmet sorumlularınızı ayarlamak için Uygulamalara hizmet sorumluları oluşturarak Azure Stack Hub erişim verme yönergelerini izleyin.
Uygulama kimliğini, gizli kodu, kiracı kimliğinizi ve nesne kimliğini daha sonra kullanmak üzere not edersiniz.
Docker'da PowerShell'i çalıştırma
Bu yönergelerde, PowerShell'i ve dağıtım için gerekli modülleri içeren Linux tabanlı bir kapsayıcı görüntüsü Azure Stack Hub.
Docker'ı Linux kapsayıcısını kullanarak çalıştırmamız gerekir. Docker'ı çalıştırarak Linux kapsayıcılara geçiş yapma.
Etki alanıyla aynı etki alanına katılmış bir makineden Docker'ı Azure Stack Hub. Azure Stack Geliştirme Seti (ASDK) kullanıyorsanız VPN'i uzak makinenize yüklemeniz gerekir.
Linux Azure Stack Hub az modülünü yükleme
Komut satırınıza aşağıdaki Docker komutunu çalıştırarak PowerShell'i bir Ubuntu kapsayıcısı içinde çalıştırın:
docker run -it mcr.microsoft.com/azurestack/powershell
Ubuntu, Debian veya Centos'u çalıştırarak. Aşağıdaki Docker dosyalarını azurestack-powershell GitHub depoda bulabilirsiniz. Docker dosyalarında GitHub değişiklikler için depolama deposuna bakın. Her işletim sistemi etiketlenir. İki nokta üst üste bölümündeki etiketini, istenen işletim sistemi etiketiyle değiştirin.
Linux Docker görüntüsü Ubuntu
docker run -it mcr.microsoft.com/azurestack/powershell:ubuntu-18.04
Debian
docker run -it mcr.microsoft.com/azurestack/powershell:debian-9
Centos
docker run -it mcr.microsoft.com/azurestack/powershell:centos-7
Kabuk cmdlet'leriniz için hazırdır. Oturum açma ve çalıştırma ile kabuk bağlantınızı test edin
Test-AzureStack.ps1.
İlk olarak hizmet sorumlusu kimlik bilgilerinizi oluşturun. Gizli numaraya ve uygulama kimliğineihtiyacınız olacak. Kapsayıcınızı kontrol etmek için nesne kimliğini de çalıştırmanız gerekir. Bulut operatörünüzden bir hizmet sorumlusu isteğide bulundurabilirsiniz.
Hizmet ilkesi nesnesi oluşturmak için aşağıdaki cmdlet'leri yazın:
$passwd = ConvertTo-SecureString <Secret> -AsPlainText -Force $pscredential = New-Object System.Management.Automation.PSCredential('<ApplicationID>', $passwd)
Bağlan örneğinizin aşağıdaki değerleriyle aşağıdaki betiği çalıştırarak ortamınıza Azure Stack Hub.
Değer Açıklama Ortamın adı. Azure Stack Hub ortamınız adı. Resource Manager Uç Noktası Dosyanın URL'Resource Manager. Bilmiyorsanız bulut operatörünüze ulaşın.
https://management.region.domain.comgibi görünür.
Dizin Kiracı Kimliği Kiracı dizininizin Azure Stack Hub kimliği. Kimlik Bilgisi Hizmet sorumlularınızı içeren bir nesne. Bu durumda
$pscredential.
./Login-Environment.ps1 -Name <String> -ResourceManagerEndpoint <resource manager endpoint> -DirectoryTenantId <String> -Credential $pscredential
PowerShell hesap nesnenizi döndürür.
Betiği kapsayıcıda çalıştırarak
Test-AzureStack.ps1ortamınızı test edin. Hizmet sorumlusu nesne kimliğini belirtin. Nesne kimliğini belirtseniz bile betik çalışır ancak yalnızca kiracı (kullanıcı) modüllerini test eder ve yönetici ayrıcalıkları gerektiren modüllerde başarısız olur.
./Test-AzureStack.ps1 <Object ID>
Sonraki adımlar
- PowerShell'de Azure Stack Hub genel bakış Azure Stack Hub.
- PowerShell için API profilleri hakkında daha fazla bilgi için Azure Stack Hub.
- PowerShell Azure Stack Hub yükleyin.
- Bulut tutarlılığı Azure Resource Manager şablon oluşturma hakkında bilgi edinebilirsiniz.