Azure Stack Hub için PowerShell'i çalıştırmak için Docker kullanma
Dikkat
Bu makalede, Kullanım Süresi Sonu (EOL) durumuna yakın bir Linux dağıtımı olan CentOS'a başvuruda bulunur. Lütfen kullanımınızı göz önünde bulundurun ve buna göre planlayın. Daha fazla bilgi için bkz. CentOS Kullanım Süresi Sonu kılavuzu.
Bu makalede, Çeşitli arabirimlerle çalışmak için gereken PowerShell sürümünün çalıştırıldığı bir kapsayıcı oluşturmak için Docker'ı kullanabilirsiniz. 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
Docker'ı yükleyin.
PowerShell veya Bash gibi bir komut satırı programına şunu girin:
docker --version
PowerShell kullanmak için hizmet sorumlusu ayarlama
PowerShell kullanarak Azure Stack Hub'daki kaynaklara erişmek için Microsoft Entra kiracınızda bir hizmet sorumlusuna ihtiyacınız vardır. Kullanıcı rolü tabanlı erişim denetimi (RBAC) ile izinleri temsilci olarak verirsiniz. Bulut operatörünüzden hizmet sorumlusu istemeniz gerekebilir.
Hizmet sorumlunuzu ayarlamak için, Hizmet sorumluları oluşturarak uygulamalara Azure Stack Hub kaynaklarına erişim verme başlığındaki yönergeleri izleyin.
Uygulama kimliğini, gizli diziyi, kiracı kimliğinizi ve nesne kimliğini daha sonra kullanmak üzere not edin.
Docker'da PowerShell çalıştırma
Bu yönergelerde, PowerShell'i ve Azure Stack Hub için gerekli modülleri içeren Linux tabanlı bir kapsayıcı görüntüsü çalıştıracaksınız.
Linux kapsayıcısını kullanarak Docker'ı çalıştırmanız gerekir. Docker'ı çalıştırdığınızda Linux kapsayıcılarına geçin.
Docker'ı Azure Stack Hub ile aynı etki alanına katılmış bir makineden çalıştırın. Azure Stack Geliştirme Seti'ni (ASDK) kullanıyorsanız VPN'yi uzak makinenize yüklemeniz gerekir.
Linux kapsayıcısı üzerine Azure Stack Hub Az modülünü yükleme
Komut satırınızdan aşağıdaki Docker komutunu çalıştırarak PowerShell'i bir Ubuntu kapsayıcısında çalıştırın:
docker run -it mcr.microsoft.com/azurestack/powershell
Ubuntu, Debian veya Centos'u çalıştırabilirsiniz. Aşağıdaki Docker dosyalarını GitHub deposunda bulabilirsiniz: azurestack-powershell. Docker dosyalarındaki en son değişiklikler için GitHub deposuna bakın. Her işletim sistemi etiketli. İki nokta üst üste işaretinden sonraki bölüm olan etiketini istenen işletim sisteminin 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ır. Oturum açıp komutunu çalıştırarak
Test-AzureStack.ps1
kabuk bağlantınızı test edin.İlk olarak hizmet sorumlusu kimlik bilgilerinizi oluşturun. Gizli diziye ve uygulama kimliğine ihtiyacınız olacaktır. Kapsayıcınızı denetlemek için komutunu çalıştırırken
Test-AzureStack.ps1
nesne kimliğine de ihtiyacınız olacaktır. Bulut operatörünüzden bir hizmet sorumlusu istemeniz gerekebilir.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)
Azure Stack Hub örneğinizden aşağıdaki değerleri içeren aşağıdaki betiği çalıştırarak ortamınıza bağlanın.
Değer Açıklama Ortamın adı. Azure Stack Hub ortamınızın adı. Resource Manager Uç Noktası Resource Manager URL'si. Bilmiyorsanız bulut operatörünüze başvurun. https://management.region.domain.com
gibi görünür.Dizin Kiracı Kimliği Azure Stack Hub kiracı dizininizin kimliği. Referans Hizmet sorumlunuzu 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.
Kapsayıcıda betiği çalıştırarak
Test-AzureStack.ps1
ortamınızı test edin. Hizmet sorumlusu nesne kimliğini belirtin. Nesne kimliğini belirtmezseniz betik çalışmaya devam eder 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
- Azure Stack Hub'da Azure Stack Hub PowerShell'e genel bakış konusunu okuyun.
- Azure Stack Hub'da PowerShell için API profilleri hakkında bilgi edinin.
- Azure Stack Hub PowerShell'i yükleyin.
- Bulut tutarlılığı için Azure Resource Manager şablonları oluşturma hakkında bilgi edinin.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin