Node.js NodeJS作为服务结构上的来宾可执行文件

Node.js NodeJS作为服务结构上的来宾可执行文件,node.js,azure-service-fabric,Node.js,Azure Service Fabric,我必须将nodejs应用程序部署为service fabric上的来宾可执行文件,我在SF本地托管了该应用程序,但当我尝试将代码推送到源代码管理时,我必须将node_模块文件夹与之一起推,但Visual studio不允许您这样做,因为node_模块中的路径太长,有没有一种方法可以不用node_模块进行部署,我尝试了像nexe这样的npm软件包,但似乎都不起作用所以经过大量研究和点击/试用后,我们做的是压缩node_模块文件夹,并配置来宾可执行文件,以便在启动服务之前在部署时解压缩文件夹。解压是

我必须将nodejs应用程序部署为service fabric上的来宾可执行文件,我在SF本地托管了该应用程序,但当我尝试将代码推送到源代码管理时,我必须将node_模块文件夹与之一起推,但Visual studio不允许您这样做,因为node_模块中的路径太长,有没有一种方法可以不用node_模块进行部署,我尝试了像nexe这样的npm软件包,但似乎都不起作用

所以经过大量研究和点击/试用后,我们做的是压缩node_模块文件夹,并配置来宾可执行文件,以便在启动服务之前在部署时解压缩文件夹。解压是通过在服务启动之前调用批处理文件完成的,下面是启动服务之前运行批处理文件的来宾可执行文件的服务清单中的代码片段:

<SetupEntryPoint>
  <ExeHost>
    <Program>MySetup.bat</Program>
    <WorkingFolder>CodePackage</WorkingFolder>
    <ConsoleRedirection FileRetentionCount="10"/>
  </ExeHost>
</SetupEntryPoint> 

MySetup.bat
代码包

另一个解决方案是同时做NPM安装,但是我们不想走那个路径。

你考虑在容器里面运行节点吗?@LoekD目前在我们的案例中不可能移动到C:\maybe?@Mardoxx,它可以工作,但我在一个源代码控制的环境中,我不能将它保留在C上:\