加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-15 07:53:31 所属栏目:百科 来源:网络整理
导读:我已经在.net平台上工作了几年,我必须说我对微软如何使.net跨平台兼容感到印象深刻. 我花了几个小时试图在mac上运行使用CoreCLR构建的小型hello world应用程序.它奏效了.虽然还有很多我还想了解的UNKNOWNS,但有一个问题我无法在google上找到答案. 如何自动部
我已经在.net平台上工作了几年,我必须说我对微软如何使.net跨平台兼容感到印象深刻.

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

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

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

解决方法

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

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

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

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

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读