Azure Devops IIS Web 部署在一台服务器上停止工作。我打破了什么?

问题描述 投票:0回答:1

我已经在多个发布管道中成功使用 IIS Web 部署任务将 .Net Core 应用程序部署到一台临时服务器(服务器 A)。我最近向部署组(服务器 B)添加了一个额外的基本服务器,并且仅添加了在 IIS 中运行 .Net 应用程序所需的内容。

这些版本似乎在两台服务器上都运行良好,但后来我对服务器 B(安装了 ColdFusion 2023)进行了其他更改,这可能导致了我的问题,或者可能是转移注意力。

我现在在服务器 B 上从 msdeployutility.js 在注册表中查找 MSDeploy 时遇到此错误,但部署在错误后继续进行,并使用任务附带的 MSDeploy 部署文件('C: zagent\A3_work_tasks\IISWebAppDeploymentOnMachineGroup_1b467810-6725 -4b6d-accd-886174c09bba .229.1 ode_modules zure-pipelines-tasks-webdeployment-common\MSDeploy3.6\MSDeploy3.6\msdeploy.exe')。

2023-11-06T18:32:02.0306228Z ##[debug]task result: Failed
2023-11-06T18:32:02.0306520Z ##[error]Unhandled: read ENOTCONN
2023-11-06T18:32:02.0307034Z ##[debug]Processed: ##vso[task.issue type=error;]Unhandled: read ENOTCONN
2023-11-06T18:32:02.0307841Z ##[debug]Processed: ##vso[task.complete result=Failed;]Unhandled: read ENOTCONN
2023-11-06T18:32:02.0314542Z ##[error]Error: read ENOTCONN
    at Socket._read (net.js:539:20)
    at Socket.Readable.read (_stream_readable.js:471:10)
    at new Socket (net.js:318:12)
    at Object.Socket (net.js:226:41)
    at createSocket (internal/child_process.js:280:14)
    at ChildProcess.spawn (internal/child_process.js:383:23)
    at spawn (child_process.js:551:9)
    at Registry.keys (C:\azagent\A3\_work\_tasks\IISWebAppDeploymentOnMachineGroup_1b467810-6725-4b6d-accd-886174c09bba\0.229.1\node_modules\winreg\lib\registry.js:539:14)
    at getMSDeployLatestRegKey (C:\azagent\A3\_work\_tasks\IISWebAppDeploymentOnMachineGroup_1b467810-6725-4b6d-accd-886174c09bba\0.229.1\node_modules\azure-pipelines-tasks-webdeployment-common\msdeployutility.js:133:12)
    at Object.<anonymous> (C:\azagent\A3\_work\_tasks\IISWebAppDeploymentOnMachineGroup_1b467810-6725-4b6d-accd-886174c09bba\0.229.1\node_modules\azure-pipelines-tasks-webdeployment-common\msdeployutility.js:115:50)
2023-11-06T18:32:02.0321488Z ##[debug]Processed: ##vso[task.issue type=error;]Error: read ENOTCONN
    at Socket._read (net.js:539:20)
    at Socket.Readable.read (_stream_readable.js:471:10)
    at new Socket (net.js:318:12)
    at Object.Socket (net.js:226:41)
    at createSocket (internal/child_process.js:280:14)
    at ChildProcess.spawn (internal/child_process.js:383:23)
    at spawn (child_process.js:551:9)
    at Registry.keys (C:\azagent\A3\_work\_tasks\IISWebAppDeploymentOnMachineGroup_1b467810-6725-4b6d-accd-886174c09bba\0.229.1\node_modules\winreg\lib\registry.js:539:14)
    at getMSDeployLatestRegKey (C:\azagent\A3\_work\_tasks\IISWebAppDeploymentOnMachineGroup_1b467810-6725-4b6d-accd-886174c09bba\0.229.1\node_modules\azure-pipelines-tasks-webdeployment-common\msdeployutility.js:133:12)
    at Object.<anonymous> (C:\azagent\A3\_work\_tasks\IISWebAppDeploymentOnMachineGroup_1b467810-6725-4b6d-accd-886174c09bba\0.229.1\node_modules\azure-pipelines-tasks-webdeployment-common\msdeployutility.js:115:50)
2023-11-06T18:32:02.0325368Z ##[debug]Unable to find the location of MS Deploy from registry on machine (Error : Error: spawn C:\Windows\system32\reg.exe ENOENT)

我尝试在服务器 B 上安装 MSDeploy 3.6,以便密钥位于注册表中,但这并没有改变错误。服务器 A 上的一切仍然工作正常,它使用已安装的 MSDeploy(“C:\Program Files\IIS\Microsoft Web Deploy V3\msdeploy.exe”),而不是捆绑版本。该版本在服务器 B 上运行时的日志显示它当时使用了捆绑版本,但在尝试在注册表中查找 MSDeploy 时没有抛出错误。

我究竟可以改变什么而导致这个问题?权限?注册表值?与 ColdFusion 2023 安装捆绑在一起的软件?

azure-devops webdeploy
1个回答
0
投票

请检查服务器 B 上的注册表编辑器中是否存在 MSDeploy 密钥。如果不存在,请从此页面重新下载 Web 部署并重新安装。如果存在,请检查您是否有访问权限。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\IIS Extensions\MSDeploy\3
© www.soinside.com 2019 - 2024. All rights reserved.