azure - 将文件从 Azurewebapp wwwroot 复制到 azure blob
问题描述
我尝试使用 copy-item 将 wwwroot 中的文件复制到 blob,但它不起作用。请您将任何可用的脚本发送给我。这对我会有很大的帮助。我是PowerShell的新手
解决方案
根据我的经验,将一些文件和目录复制到 Azure Blob 存储的简单方法是使用 AzCopy 以下是我将 Azure WebApp 的 D:\home\site 下的资源复制到 Blob 存储的步骤。
- 首先,我在本地 Windows 机器上安装了 AzCopy v8,并将 C:\Program Files (x86)\Microsoft SDKs\Azure 下的 AzCopy 目录上传到 Kudo 控制台路径 D:\home\site,如下图。
- 使用命令复制文件
azcopy /Source: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
}
}
推荐阅读
- elasticsearch - 如何在 Elasticsearch 中对可以容忍不正确和部分查询的英国地址进行建模?
- python-3.x - 如何在 Keras Lambda 回调中按时期访问步数
- grafana - 如何删除 Grafana 中不同时间戳集群之间的行?
- docker - 无法使用 Serenity 在远程机器上运行测试
- python - 从 CLI 执行程序时,如何在我的代码中获取用户输入作为删除函数的参数
- python - 在没有地图的情况下替换熊猫数据框中的多个值的优雅方法?
- image - Bootstrap Carousel 产生“空白图像”
- python - 如何组合两个 RGB 图像而它们之间没有空白
- javascript - jQuery 切换隐藏这么快?
- xamarin - 有没有人能够看到 Xamarin Forms 和 AppCenter.ms 的崩溃附件?