使C ++运行时可用于Elastic Beanstalk部署

时间:2014-03-07 22:30:09

标签: c# asp.net .net dll elastic-beanstalk

我计划在Amazon Elastic Beanstalk上发布我的ASP.NET 4.5应用程序。我有一个依赖于Visual C ++ Redistributable Packages的库ImageMagick.NET。

我无法手动安装软件包,因为我从Visual Studio中部署应用程序,服务器将根据我的代码自动扩展。

我想为x86和x64安装Visual C ++ Redistributable,以便我的应用程序可以作为用户。

现在我收到错误:

ould not load file or assembly 'Magick.NET-x86.DLL' or one of its dependencies. The specified module could not be found.

那是因为我没有在服务器上安装软件包(asked this question earlier)。

因此,根据我的理解,我需要一种方法来预先安装软件包,可能是使用merge modules向bin文件夹提供dll,或者从将启动软件包的项目中初始化安装程序在Elastic Beanstalk上部署项目后的安装程序。

我需要一种方法来自动安装这些软件包,以便ImageMagick.NET dll可以正常工作。感谢。

更新:他们可能是configuration files的一种方式。

1 个答案:

答案 0 :(得分:1)

正确的方法是使用Elastic Beanstalk配置文件。

这些是YAML文件,您可以在其中添加命令(以指定的格式)并与您的应用程序包一起上传。你可以做一些事情,比如创建文件,安装库等。大多数命令行(无头)可行的东西都可以在这里处理。

在运行Windows的EC2实例上自定义软件 - AWS Elastic Beanstalk:http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers-windows-ec2.html

每次部署新版本或重新启动服务器时,这些脚本都会执行,您可以实现几乎任何自定义。