繁体   English   中英

如何使用DNX和ASP.NET 5实现持续交付

[英]How to implement Continuous Delivery with DNX and ASP.NET 5

我已经在.net平台上工作了几年,我必须说我对微软如何使.net跨平台兼容感到印象深刻。

我花了几个小时试图在mac上运行使用CoreCLR构建的小型hello world应用程序。 它奏效了。 虽然还有很多我还想了解的UNKNOWNS,但有一个问题我无法在google上找到答案。

如何自动部署dnx应用程序。 我的意思是,你是否将你的aspnet 5应用程序编译成一个nuget包,然后在你的linux服务器上恢复它(我从未使用过Linux,所以不确定nuget是如何在那里工作的),并运行dnx命令? 或者只是拉链并将其直接推送到服务器?

对不起,这对我来说都很新鲜,所以我的问题可能听起来很愚蠢。 我只是想知道什么是我可以为我的asp.net 5应用程序实现持续交付的最佳方式。 我的最终目标是在linux容器上托管我的应用程序。

您可以使用dnu publish --runtime <name of runtime> --no-source 这将创建一个包含应用程序,依赖项和运行时的文件夹。 然后,您所要做的就是在服务器上获取该文件夹。

你如何移动文件真的取决于你的场景......它可能是FTP,存储,Kudu(如果你在Azure网站上),等等。

另一种方法是在服务器上进行还原。 虽然这会在发布时减小应用程序的大小,但您必须在服务器上恢复可能不安全的软件包,并且还可能导致应用程序中断,因为在源上可能存在更新的,不兼容的软件包。

虽然没有正确答案适合所有人,但我发现如果你想要最可靠和一致的结果,你应该发布所有内容,在本地测试,然后只需在服务器上复制捆绑包。

对于码头工人,我推荐同样的东西。 使用运行时发布并且没有源,并创建具有结果文件夹的容器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM