您将如何在AWS上托管Haskell Web应用程序?

时间:2015-08-05 11:40:18

标签: haskell amazon-web-services web-applications server

您如何在亚马逊网络服务上托管Haskell网络应用?你会用什么框架?

2 个答案:

答案 0 :(得分:2)

我最近尝试在Amazon Beanstalk上托管基于Scotty(Haskell)的Web应用程序。既然没有对Haskell的直接支持,我不得不采用docker方法。这些步骤涉及使用Stack中的默认docker镜像(我使用堆栈构建我的应用程序),托管在Docker Hub上并从Amazon Elastic Beanstalk引用该图像。

我在Github

上的示例HelloScotty项目中记录了整个过程

答案 1 :(得分:0)

Haskell Web服务器就像任何其他Web服务器应用程序一样 - 它们将自己绑定到端口(通常在开发中80803000等)并为其提供服务。您可以强制应用程序绑定到端口80(通过Yesod中的-p标志,或者使用Scotty的代码)作为超级用户,或者您可以将端口80重新路由到您的开发端口为iptables

但是,这并不能保护您免受进程本身失败的影响 - 因为您需要看门狗集成,通常使用systemd或Upstart。除此之外,它非常标准。