Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Nainstalujte aplikaci prostřednictvím šablony katalogu služeb virtuálního počítače.
Skriptování instalace aplikace podporuje následující scénáře:
- Nejběžnějším případem použití pro instalaci aplikace RemoteApp je nasazení vzdálených aplikací, ke kterým je možné přistupovat z Azure virtuálního destopu.
- Nainstalujte si požadované součásti, jako jsou třeba agenti pro zabezpečení a monitorování kyberzločinců.
- Změny konfigurace skriptu pro dodržování předpisů nebo nastavení aplikace
Note
Toto ukázkové nasazení je určené jenom pro ukázkové účely a nepředstavuje všechny osvědčené postupy pro správu sítí, systémů nebo aplikací.
Předpoklady
Šablona RemoteApp podporuje skriptování pro automatizaci procesu instalace aplikací a konfigurace virtuálního počítače. Než začnete používat instalaci aplikace RemoteApp, musíte se ujistit, že máte:
- Komunita, enkláva, úloha a alespoň jedna skupina prostředků a oprávnění k vytváření prostředků uvnitř skupiny prostředků úloh.
- Povolte pro svou enklávu
Advancedrežim údržby, abyste mohli do spravované skupiny prostředků vaší enklávy přidat prostředky Private Linku. - Kontejner (artefakty) v účtu úložiště.
- Komunitní koncový bod pro účet úložiště a volitelně pro existující kopii AzCopy.exe.
- Kopie souboru AzCopy.exe
- Stáhněte si AzCopy.
- Nahrajte instalační program AzCopy do účtu úložiště na stejné úrovni jako složka aplikace.
- Struktura souborů:
- storage account - artifacts container - app folder - azcopy.exe
- Připojení enklávy mezi dříve vytvořenými komunitními koncovými body a podsítí enklávy.
Note
Pokud je účet úložiště v jiné enklávě, vytvořte koncový bod enklávy v enklávě s účtem úložiště. Potom vytvořte propojení enkláv mezi enklávou tohoto účtu úložiště a enklávou, do které instalujete aplikaci.
Nasazené prostředky Azure
- Příklad virtuálního počítače RemoteApp
- Disk
- Virtuální počítač Windows
- rozšíření virtuálního počítače Windows
Nasazený software
- Windows
- Použití podle vašeho výběru
Instalace
Nastavení účtu úložiště pro instalaci Visual Studio Code
- Přidejte složku aplikace do kontejneru v rámci účtu úložiště.
- Struktura souborů:
- artifacts container - app folder - app installer - main script to install app - (optional) additional scripts - (optional) azcopy.exe
- Struktura souborů:
- Stáhněte si instalační program aplikace, který potřebujete. V tomto příkladu stáhněte Vscode.exe a nahrajte instalační program do složky aplikace účtu úložiště.
-
main.ps1Nahrajte instalační skript aplikace kompatibilní s verzí Visual Studio Code, kterou jste přidali do složky aplikace účtu úložiště:# Main powershell script that installs the application Start-Process 'C:/vscode/VSCodeSetup-x64-{version}.exe' -Argument "/VERYSILENT /MERGETASKS=!runcode"
Šablona instalace
- Na stránce přehledu úloh vyberte
+Add an Azure Service.
- Pro
ServicevyberteVirtual Machine.
Potvrďte výběr skupiny prostředků a vyberte
NextKarta Základní:
- U položky
Virtual Machine namezadejte název virtuálního počítače. - Pro
Admin usernameaAdmin passwordzadejte uživatelské jméno a heslo, které používáte k přihlášení do svého virtuálního počítače.
- U položky
Karta aplikace:
Do
App folder URIkontejneru zadejte identifikátor URI. Vyberte artefakt v kontejneru, zkopírujte jeho identifikátor URI, odeberte všechno za názvem složky v identifikátoru URI.
Původní URI Pevný identifikátor URI <storage-account>https://.blob.core.windows.net/<container-name>/<folder-name>/<script>.ps1<storage-account>https://.blob.core.windows.net/<container-name>/<folder-name>Příklad:
- storageaccountexample.blob.core.windows.net/artifacts/vscode
Pro
Main Scriptzadání názvu (např.main.ps1) skriptu, který nainstaluje aplikaci.
Privátní kontejner:
Pro
App folder in private containervybertetrue, chcete-li povolit rolireaderpřístup k účtu úložiště prostřednictvím virtuálního počítače.Pro
Storage container resource idzískejte následující tři části:<storage-account-resource-id>+ '/blobServices/default/containers/' +<container-name>.- Pokud chcete získat
Storage container resource id, v účtu úložiště vyberte „Přehled“, zcela vpravo vyberte „Zobrazení JSON“ a zkopírujte ID prostředku účtu úložiště.
- Jako název kontejneru zkopírujte název privátního kontejneru, který obsahuje artefakty.
- Příklad ID prostředku úložného kontejneru:
subscriptions/000000a0-a0a0-000a-00a0-0000aaa0a000/resourceGroups/providers/Microsoft.Storage/storageAccounts/storage-account-example/blobServices/default/containers/container-name
- Pokud chcete získat
Pokud se zobrazí parametr
AzCopy File URI, přidejte identifikátor URI do azcopy.exe z kontejneru.- Vyberte soubor a zkopírujte jeho adresu URL:
Příklad parametrů privátního kontejneru:
- Vyberte
Review and Create, pokud ověření projde, vyberteCreate. - Po nasazení prostředků zkontrolujte, jestli je aplikace nainstalovaná na virtuálním počítači aplikace připojením k virtuálnímu počítači aplikace. Připojení k virtuálnímu počítači aplikace
Instalace WinGetu
Struktura složek:
- artifacts container
- WinGet app folder ('winget')
- WinGet installer ('Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle')
- Windows UI Library ('Microsoft.UI.Xaml.2.8.x64.appx')
- main script to schedule install ('main.ps1')
- script to install and schedule reboot('install_winget.ps1')
- ('restart.ps1')
- Stáhněte si instalační programy a nahrajte je do složky winget v kontejneru úložiště.
- Balíček WinGet
MSIX(Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle) - Knihovna uživatelského rozhraní Windows (Microsoft.UI.Xaml.2.8.x64.appx)
- Balíček WinGet
- Vytváření a nahrávání skriptů
- main.ps1
# This script creates and runs a scheduled task to install the appx package and msix bundle with elevated privileges $installScriptPath = "C:\winget\install_winget.ps1" # Create a scheduled task action to run the installation script with elevated permissions $taskAction = New-ScheduledTaskAction -Execute 'powershell.exe' -Argument "-ExecutionPolicy Bypass -File $installScriptPath" # Set the task to start 30 seconds from now $taskTrigger = New-ScheduledTaskTrigger -Once -At (Get-Date).AddSeconds(30) $taskPrincipal = New-ScheduledTaskPrincipal -UserId "SYSTEM" -LogonType ServiceAccount -RunLevel Highest # Register the scheduled task Register-ScheduledTask -TaskName "InstallWinget" -Action $taskAction -Trigger $taskTrigger -Principal $taskPrincipal - install_winget.ps1
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass -Force Start-Process -FilePath "DISM.exe" -ArgumentList "/Online /Add-ProvisionedAppxPackage /PackagePath:C:\winget\Microsoft.UI.Xaml.2.8.x64.appx /SkipLicense" -NoNewWindow -Wait Start-Process -FilePath "DISM.exe" -ArgumentList "/Online /Add-ProvisionedAppxPackage /PackagePath:C:\winget\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle /SkipLicense" -NoNewWindow -Wait $wingetDir = 'C:\Program Files\WindowsApps\Microsoft.DesktopAppInstaller_1.23.1791.0_x64__8wekyb3d8bbwe' $currentPath = [System.Environment]::GetEnvironmentVariable("Path", [System.EnvironmentVariableTarget]::Machine) [System.Environment]::SetEnvironmentVariable("Path", "$currentPath;$wingetDir", [System.EnvironmentVariableTarget]::Machine) # Schedule the reboot script $rebootScriptPath = "C:\winget\reboot.ps1" $taskAction = New-ScheduledTaskAction -Execute 'powershell.exe' -Argument "-ExecutionPolicy Bypass -File $rebootScriptPath" # Set the task to start 30 seconds from now $taskTrigger = New-ScheduledTaskTrigger -Once -At ((Get-Date).AddSeconds(30)) $taskPrincipal = New-ScheduledTaskPrincipal -UserId "SYSTEM" -LogonType ServiceAccount -RunLevel Highest # Register the scheduled task Register-ScheduledTask -TaskName "Reboot" -Action $taskAction -Trigger $taskTrigger -Principal $taskPrincipal - restart.ps1
Restart-Computer -Force
- main.ps1
- Pokračovat k nasazení šablony