1

我能够将 CoreCLR ASP.NET 应用程序部署到 Linux 并让它们运行,万岁。为此,我正在使用

dnu publish --no-source -o <dest-dir>

这给了我一个包含许多 CoreCLR 包的 dest-dir,其中一个是专门为我发布的应用程序提供的包。

这个文件夹非常大,大约 50 MB 用于https://azure.microsoft.com/en-us/documentation/articles/web-sites-create-web-app-using中描述的简单 Web 应用程序基本(无身份验证) -vscode/

有没有一种明智的方法可以部署到 Linux 而无需过多推动?我能以某种方式摆脱一堆 CoreCLR 包吗?是否有一种仅部署源代码并在服务器上完成工作的好方法(我可能已经看到了一些关于此的内容,但如果我这样做了,我会丢失它)?

4

1 回答 1

1

您已经在没有运行时(--runtime选项 on dnu publish)的情况下发布,这会显着减小包大小。

您需要以某种方式在服务器上获取这些软件包。即使您只部署源,您也必须恢复将下载相同数量的包。此外,从源代码运行会使应用程序的启动速度明显变慢(取决于依赖项的数量)。

但是,如果您一次发布整个包并且您的应用程序的依赖项没有更改,您可以只上传与您的项目对应的文件夹,而不是重新上传所有依赖项。

于 2016-04-20T03:29:59.397 回答