繁体   English   中英

无法将 .bacpac 文件从 Azure VM 上传到 Azure blob 存储容器

[英]Not able to upload the .bacpac file from Azure VM to Azure blob storage container

我正在处理一个用例,我将在其中将数据库模式从开发部署到 UAT 和生产,但在部署到 UAT 和生产之前,我将 UAT 和生产的备份作为 a.bacpac 文件。 以下是我在 Azure DevOps 管道中执行的步骤

  1. 使用“Azure SQL 数据库部署”内置任务生成 .bacpac 文件。 在“D:\a\r1\a\GeneratedOutputFiles\filename.bacpac 生成的文件

  2. 检查文件是否存在于上述路径 -> 是文件可用。

  3. 使用“Azure 文件复制”内置任务复制到 blob 存储。 我采用的源路径是 $(System.ArtifactsDirectory)\GeneratedOutputFiles
    目的地是我的 blob 容器。 PFA,关于每个步骤的详细信息和谷歌驱动器文档中的日志。 问题是我无法将文件上传到 blob 存储,因为日志显示源文件夹为空,但文件存在于源文件夹中。 有人可以看看并指导我在这里缺少什么吗? 文档的 Google Drive 路径

可以使用AzCopy从 Azure Blob 存储中复制文件或向其中复制文件。

AzCopy 是一个命令行实用工具,可用于将 blob 或文件复制到存储帐户或从中复制。

您可以访问微软官方文档下载并了解更多关于AzCopy的信息。

此外,要将文件从 Azure VM 复制到 Blob 存储,请遵循此第三方教程

在 AzCopy 命令中,您将需要使用要在其中复制 .bacpac 文件的容器的 SAS 令牌。

Azure 管道中文件复制任务的新v4从使用 AzCopy 8 转移到 AzCopy 10,它需要更高的安全性来让 Azure DevOps 服务主体通过 Azure 进行身份验证。

你可以:

  1. 更改为任务的“v3”版本。 在此处输入图像描述
  2. 或者您需要赋予服务主体角色: Storage Blob Data ContributorStorage Blob Data Owner

您可以在链接中找到更多详细信息:https://github.com/microsoft/azure-pipelines-tasks/issues/13124

https://brettmckenzie.net/2020/03/23/azure-pipelines-copy-files-task-authentication-failed/

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM