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