使用管道任务将文件复制到Azure Linux vm

时间:2020-05-17 07:52:41

标签: azure azure-devops cloud azure-pipelines pipeline

我试图将存储在blob存储中的伪像复制到linux vm。我发现了适用于Windows vm的AzureFileCopy,但不适用于linux vm,因为在内部它使用仅在Windows vm中有效的winRM命令。谁能建议谁使用管道任务来实现这一目标。

- task: AzureFileCopy@4
  inputs:
    sourcePath: 
    azureSubscription: 
    destination: # Options: azureBlob, azureVMs
    storage: 
    #containerName: # Required when destination == AzureBlob
    #blobPrefix: # Optional
    #resourceGroup: # Required when destination == AzureVMs
    #resourceFilteringMethod: 'machineNames' # Optional. Options: machineNames, tags
    #machineNames: # Optional
    #vmsAdminUserName: # Required when destination == AzureVMs
    #vmsAdminPassword: # Required when destination == AzureVMs
    #targetPath: # Required when destination == AzureVMs
    #additionalArgumentsForBlobCopy: # Optional
    #additionalArgumentsForVMCopy: # Optional
    #enableCopyPrerequisites: false # Optional
    #copyFilesInParallel: true # Optional
    #cleanTargetBeforeCopy: false # Optional
    #skipCACheck: true # Optional
    #sasTokenTimeOutInMinutes: # Optional

1 个答案:

答案 0 :(得分:0)

目前,没有可用于将内容从Blob存储直接复制到VM的任务。 (即使仅将Azure文件复制任务也支持将本地文件复制到VM。)

假设您有一个Linux自托管代理和一个Target Linux VM:

1。您可以使用Azure Powershell task从Blob存储中下载文件。从how to download file from azure storage blob中查看 4c74356b41 的答案。

2。然后,您可以尝试Copy Files Over SSH task将文件复制到Linux VM。

此外,您可以选择直接在Azure VM中安装自托管代理(类似于this)。之后,您可以轻松使用Azure Powershell任务在当前计算机上下载文件。