如何在 Azure 应用服务上运行使用 ts-node 开发的节点应用程序

Posted

技术标签:

【中文标题】如何在 Azure 应用服务上运行使用 ts-node 开发的节点应用程序【英文标题】:How to run node application developed using ts-node on Azure app service 【发布时间】:2018-04-15 14:48:16 【问题描述】:

Azure 应用服务上的节点应用程序的大部分 documentation 都是围绕使用 iisnode 模块处理程序运行的,该处理程序使用 app.js 或 server.js 之类的文件。

如果我们想运行我们一直使用 typescript 开发并使用 ts-node 运行的同一个应用程序怎么办?

可能的一种选择是将打字稿文件编译成 javascript 文件,但这会开销创建的文件,这是我不想要的。

【问题讨论】:

我希望有一个解决方案。 Azure 的另一个限制。我希望我的公司使用 AWS。 看起来这在 2020 年仍然不是问题,我能够添加 "start": "ts-node server.ts" 并且应用程序在 Azure 上正确部署和启动。如果应用无法启动,很可能与其他问题有关,请为您的应用启用详细日志,然后检查问题所在。 【参考方案1】:

如果我们想运行我们一直使用 typescript 开发并使用 ts-node 运行的同一个应用程序怎么办?

不要使用 ts-node 运行生产代码。转译为.js并运行js文件。

【讨论】:

巴萨拉特有什么好的理由吗?据我了解,ts-node 无论如何都会将内存中的打字稿文件编译为 js,那么问题是什么? I understand ts-node compiles typescript files in-memory to js anyway 没错。省了一大笔钱 如果你的意思是节省内存,那么从省钱开始,然后在我的场景中,如果在内存中创建文件不是一个大问题,那么理论上无论我们运行 ts 还是 js 文件,编译的 javascript 都是相同的。在那种情况下,无论如何都可以使用 ts-node 运行? @basarat 我也不明白这个道理,一个中型项目需要多少内存? 100KB?我认为现在任何人都能负担得起?

以上是关于如何在 Azure 应用服务上运行使用 ts-node 开发的节点应用程序的主要内容,如果未能解决你的问题,请参考以下文章

如何部署 Nestjs 应用程序(在 Azure 上)?

如何在 Azure App Service 上运行的 ASP.NET Framework App 中禁用服务器 GC

如何在 Visual Studio 中的不同端口上运行 Azure Function 应用程序

使用 Azure 时如何解决此错误“AddressAccessDeniedException”?

身份验证如何在 Azure Functions 上工作

如何从 Android 连接到 Azure 上的 MongoDB?