По моему опыту, простой способ скопировать некоторые файлы и каталоги в хранилище BLOB-объектов Azure - это использовать AzCopy.
Вот мои шаги, которые нужно реализовать для копирования ресурсов из D: \ home \ site Azure WebApp в хранилище BLOB-объектов.
- Сначала я установил AzCopy v8 на свой локальный компьютер с Windows и загрузил каталог AzCopy в C: \ Program Files (x86) \ Microsoft SDKs \ Azure в путь к консоли Kudo D: \ home \ site, как показано на рисунке ниже.
- Используйте команду для копирования файла
azcopy / Источник: D: \ home \ site \ wwwroot / Dest: "URL вашего контейнера"
/ Destkey: «ваш ключ хранения» / s
Для более подробной информации, пожалуйста, обратитесь к https://docs.microsoft.com/en-us/azure/storage/common/storage-use-azcopy?toc=%2fazure%2fstorage%2fblobs%2ftoc.json
Обновление
$Username = ""
$password = ""
$secpasswd = ConvertTo-SecureString $password -AsPlainText -Force
$mycreds = New-Object System.Management.Automation.PSCredential ($name, $secpasswd)
Add-AzureRmAccount -Credential $mycreds
$ResourceGroupName=""
$AccountNmae=""
$ContainerName=""
$account =Get-AzureRmStorageAccount -ResourceGroupName $ResourceGroupName -Name $AccountNmae
$container=Get-AzureStorageContainer -Name $ContainerName -Context $account.Context
$sourceFileRootDirectory = ""
if ($container) {
$filesToUpload = Get-ChildItem $sourceFileRootDirectory -Recurse
foreach ($x in $filesToUpload) {
$targetPath = ($x.fullname.Substring($sourceFileRootDirectory.Length + 1)).Replace("\", "/")
Write-Verbose "Uploading $("\" + $x.fullname.Substring($sourceFileRootDirectory.Length + 1)) to $($container.CloudBlobContainer.Uri.AbsoluteUri + "/" + $targetPath)"
Set-AzureStorageBlobContent -File $x.fullname -Container $container.Name -Blob $targetPath -Context $account.Context -Force | Out-Null
}
}