从 GitHub 持续部署在 Azure 中失败(ASP.NET 5 和 MVC 6)
Posted
技术标签:
【中文标题】从 GitHub 持续部署在 Azure 中失败(ASP.NET 5 和 MVC 6)【英文标题】:Continuous Deployment from GitHub failing in Azure (ASP.NET 5 & MVC 6) 【发布时间】:2015-12-17 19:22:25 【问题描述】:我在 Azure 中从 GitHub 进行持续部署时遇到问题。我有一个共享定价层,如果我升级到基本定价层,问题就会消失。这适用于 ASP.NET MVC 6 应用程序 (RC1)。
基本上我收到以下错误: http://pastebin.com/PgARgurg
突出的一点是:
Restore failed
There is not enough space on the disk.
如果我直接从 Visual Studio 发布到共享层,它可以正常工作。只有在使用持续部署时才会失败。
有什么想法吗?
【问题讨论】:
【参考方案1】:共享实例的资源非常有限,尤其是在磁盘大小方面。来自 GitHub 的持续部署集成涉及在每次更改时将代码副本保存到磁盘,这并不总是立即(或根本不)清理。从 Visual Studio 直接发布到 Azure 会自动清理之前的部署包。升级您的层解决问题的原因是专用和增加的可用磁盘空间。如果您认为持续集成(以及磁盘空间)对您的工作很重要,则应该升级到 Basic。
【讨论】:
【参考方案2】:还有一个警告。共享 Web 应用程序实例对 Temp Folder size of 300Mb 有限制。
asp.net 5 RC1 应用程序使用比 Beta8 应用程序更多的临时文件夹存储空间。现在几乎不可能通过持续集成将 RC1 部署到免费应用服务。
【讨论】:
【参考方案3】:基本上恢复的包大小不与应用程序的已发布包大小相同。 你可以通过打开恢复的包来理解为什么会这样……例如,在下面的场景中,发布的包只有运行应用程序所需的内容。
恢复 JSON.NET 包内容:
已发布 JSON.NET 包内容:
那么您可能应该从持续部署中发布应用程序吗?
【讨论】:
有道理,谢谢。奇怪的是,考虑到我的网站很小,它是共享使用选项的一个选项! 尽管如此,Shared 选项允许 1GB 磁盘空间,而我只使用 60mb(在解决方案中,但即使查看包文件夹它仍然是 @AdrianLucaThomas:有多少可用空间?对于一个开箱即用的 MVC 模板,我看到总包大小约为 500 MB... 共享选项为 1GB。然而,根据 Matias 的帖子,这听起来可能是临时文件夹的问题(但这是基于免费的网络应用程序,而不是共享的)。以上是关于从 GitHub 持续部署在 Azure 中失败(ASP.NET 5 和 MVC 6)的主要内容,如果未能解决你的问题,请参考以下文章
生成 ASP 应用程序并将其部署到 Azure Web 应用程序失败
在 azure 上部署 cloudera 失败,JSON / ARM 模板函数“copyIndex”出错