Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
跨平台Elixir部署_Elixir_Exrm - Fatal编程技术网

跨平台Elixir部署

跨平台Elixir部署,elixir,exrm,Elixir,Exrm,我已经创建了Elixir应用程序(Slack bot),我想将其部署到运行Ubuntu的朋友的服务器上。不必在机器上构建应用程序的最佳方法是什么 我尝试使用exrm创建要部署的包,但由于我是在Windows上开发的,该包仅适用于Windows计算机(erts-7.2.1/bindir仅包含Windows二进制文件) 我不需要非常高级的部署,所以也许我可以复制已编译的应用程序并在那里运行它。但是我不知道我应该复制什么(beam文件?),从哪里复制,以后如何运行 另一个问题是服务器上没有Erlang

我已经创建了Elixir应用程序(Slack bot),我想将其部署到运行Ubuntu的朋友的服务器上。不必在机器上构建应用程序的最佳方法是什么

我尝试使用exrm创建要部署的包,但由于我是在Windows上开发的,该包仅适用于Windows计算机(
erts-7.2.1/bin
dir仅包含Windows二进制文件)

我不需要非常高级的部署,所以也许我可以复制已编译的应用程序并在那里运行它。但是我不知道我应该复制什么(beam文件?),从哪里复制,以后如何运行

另一个问题是服务器上没有Erlang/Elixir,但是有docker,所以我可以使用其中一个映像。我应该使用哪一个-Erlang或Elixir图像

应用程序本身使用应用程序行为(
use Application
)启动主监控程序。

序言:如果可以,我会问你的朋友你是否可以在机器上安装elixir/erlang。你可以走docker路线,但据我所知,这意味着你不能进行“热升级”

我发现将应用程序部署到运行ubuntu的服务器上最简单的方法就是使用。基本上,一旦设置好,部署就非常简单:

mix edeliver build release 
mix edeliver deploy release to production
mix edeliver restart production

检查自述文件-它非常清楚地贯穿了整个过程

谢谢,我来看看。但从我在edeliver页面上看到的情况来看,它需要在与目标系统类似的系统上构建发行版(在这种情况下是Linux)。我希望我可以在Windows上本地构建,并且只发送已编译的应用程序,因为它无论如何都在Erlang VM上运行。@MaciejWozniak我克服这个问题的方法就是直接在目标服务器上构建。因此,我将在服务器上构建并部署到服务器