在Amazon EC2上运行Erlang项目

时间:2012-11-26 19:01:15

标签: amazon-ec2 erlang remote-server

我们有一个包含不同流程的项目,并通过调用erl -pa ebinmymodule_supervisor:start_link().

来运行它

我们在Amazon EC2上设置了一个ubuntu实例。作为新手,我们如何远程运行项目,以便我们可以关闭连接,项目将继续运行?

我们可以在后台运行Erlang shell,但我们不能在它上面运行它。看一个例子是完美的。

1 个答案:

答案 0 :(得分:5)

方法1:您可以从代码中构建一个发布包。如果做得好,这将在一个易于分发的tar文件中嵌入一个完整的Erlang系统(以及你的应用程序及其依赖项)。使用自动生成的脚本,该节点可以作为守护程序启动,即使在关闭shell后也可以在后台运行。

开始使用的好方法是使用Rebar,它已经开箱即用release handling

方法2:使用tmux或屏幕(均可轻松安装在Ubuntu上)启动节点并分离会话。如果选择tmux,则以下内容应该有效:

  1. 只需从shell运行tmux即可启动tmux。
  2. 在tmux中,使用erl命令启动节点。
  3. 使用Ctrl-b后跟d分隔您的会话。退出你的shell。节点应该仍在运行。

  4. 启动主管的“正确”方法是在Erlang applicationstart_link函数内调用其start函数。