azure - Windows 计算机文件复制 - DevOps 任务和 IP 地址

标签 azure powershell azure-devops azure-pipelines azure-pipelines-release-pipeline

我正在 Azure DevOps 上构建发布管道。我的发布的一部分是将一堆文件复制到 Azure VM。据我了解,目标机器需要打开PowerShell 5986端口。

我有一个打开端口 5986 的虚拟机(我通过使用“目标计算机上的 PowerShell”任务远程调用此虚拟机上的一些命令来验证这一点)。 我添加了“Windows 计算机文件复制”任务并填充了字段: - 来源 - 机器 - 管理员登录 - 密码 - 目标文件夹

在“Machines”字段中,我输入了目标机器的IP。

运行该版本后,我收到错误:

Failed to Create PSDrive with Destination: '\\11.11.11.11\C$\TargetDirectory', ErrorMessage: 'The network path was not found' The network path was not found

我还尝试将 IP 地址与端口一起输入,格式如下:11.11.11.11:5986

然后,我得到了这个错误:

Cannot convert value "\23.97.151.221:5986" to type "System.Uri". Error: "Invalid URI: The hostname could not be parsed."

文档 ( https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/deploy/windows-machine-file-copy?view=azure-devops ) 表示允许带有端口的 IP 地址。

这里有什么问题吗?

最佳答案

我在执行这些操作时遇到了完全相同的错误:

  • 最初在我的发布管道中,我有一个代理作业,我在该作业下创建了一个 Windows 计算机文件复制任务,并正确填写了所有详细信息。我使用目标服务器(Windows azure VM)的公共(public) IP 地址设置了 Machines 字段,但我总是收到您报告的此错误。

  • 我尝试使用 Azure 文件复制任务,但遇到了另一个问题(错误消息:无法获取 ResourceGroup: {resourceGroupName} 中所有资源的 FQDN),此后我无法修复该问题付出了很多努力。

这是对我有用的解决方案:

  • 我没有运行代理作业,而是运行了部署组作业。通过部署组,我不需要 IP 地址即可连接到我的虚拟机。为 Azure VM 设置部署组非常简单且解释清楚 here

  • 我在添加的部署组作业下创建了 Windows 计算机文件复制任务。我为该任务填写了相同的详细信息,只不过我在“机器”字段中输入了计算机名称,而不是 Windows VM 的 IP 地址,并且文件复制任务成功运行!

希望这有帮助

关于azure - Windows 计算机文件复制 - DevOps 任务和 IP 地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56459754/

相关文章:

Azure DevOps 管道卡住

Azure VM - 由于虚拟机出现故障,无法执行操作

powershell - DynamoDB API 过滤扫描不返回任何结果

使用 64BitCompiler 时 UWP 构建失败

使用 Octopus Deploy 的备用凭据的 Powershell 作业

powershell - 使用 powershell windows azure commandlet,如何执行 Reset-RoleInstance 并等待操作完成

azure-devops - 如何将 Azure DevOps 项目移至其他组织?

c# - Azure 表存储返回 400 错误请求

asp.net-mvc - 开发 localhost 时禁用 Azure Active Directory

azure - QnA Bot 在测试时可以工作,但嵌入网站时总是回复 "No Match Found!",除非完全匹配