如何在Heroku云端部署运行Elixir编写的gpilot航海模拟器自动驾驶程序
解决Elixir运行环境支持问题
Heroku没有官方Elixir运行环境,可通过社区维护的构建包实现支持,全程在Heroku网页面板操作即可:
- 打开对应Heroku应用的「Settings」页面,找到「Buildpacks」模块,点击「Add buildpack」
- 先添加Erlang构建包,输入
https://github.com/HashNuke/heroku-buildpack-erlang.git保存 - 再添加Elixir构建包,输入
https://github.com/HashNuke/heroku-buildpack-elixir.git保存,注意保持Erlang构建包在列表的上方位置
解决/ops目录配置问题
不需要在Heroku端单独上传文件,直接操作你Fork到自己GitHub账号下的gpilot仓库即可:
- 打开你自己账号下的gpilot仓库,在网页端根目录新建名为
ops的文件夹 - 将项目要求的配置文件全部上传到这个
ops文件夹中,提交改动到仓库主分支 - Heroku和GitHub绑定后会自动拉取仓库全部内容,
ops目录会同步到部署环境中
重新部署操作
- 回到Heroku应用的「Deploy」页面,下滑到「Manual deploy」区域
- 选择gpilot仓库的主分支,点击「Deploy Branch」等待部署完成即可
补充说明:如果部署提示版本不匹配,可在你GitHub仓库根目录新建
elixir_buildpack.config文件,填入项目要求的Elixir、Erlang版本号即可,例如:elixir_version=1.15.0 erlang_version=25.3
内容的提问来源于stack exchange,提问作者matijacus
相关产品推荐
相关产品推荐

