将Haskell Web应用程序部署到低规格服务器

tda*_*ers 7 debian haskell cross-compiling ghc web-deployment

我正在寻找一种在低规格玩具服务器上部署Haskell Web应用程序的方法.服务器规格:

  • 操作系统:debian stable(挤压)i386
  • CPU:1 GHz Pentium IV
  • RAM:512 MB
  • 存储:512 MB紧凑型闪存(已安装/var),4 GB USB紧凑型闪存(已安装/)

服务器运行正常,它没有看到太多的流量(它主要由我自己,朋友和家人使用),我可以负担得起从我的起居室运行它因为它完全静音并且消耗很少的功率(大约10 W闲置,40 W峰值).

很明显,我想避免安装整个Haskell平台并在服务器上编译 - 我会很快耗尽磁盘空间,并且由于存储速度慢,编译必然需要很长时间.我不能只从我的开发机器部署二进制文件,因为那个运行debian测试amd64,所以二进制文件将不兼容.我的想法到目前为止:

  • 安装一个带有debian/i386的虚拟机来构建
  • 找出一种在amd64上构建i386二进制文件的方法
  • 在开发机器上编译为C,将C源复制到服务器,在那里完成构建(在服务器上安装gcc或clang可能是可以接受的)
  • 其他想法?

哪一个听起来最有希望?选项2和3是否可能?

另外,我有点担心图书馆; 应用程序依赖于一些系统库,如libcairo; 在服务器上安装它们不是问题,但我想知道,特别是对于选项2,这是否可行(库版本等)

Ric*_*ton 3

没有尝试过 haskell,但过去有类似的要求,我发现最简单的方法是设置一个与目标系统具有相同版本的 debian 的虚拟机。意味着您无需担心库版本控制等问题。