将 Phoenix 1.3 雨伞应用程序部署到 Heroku
将 Phoenix 1.3 雨伞应用程序部署到 Heroku
原文:https://medium.com/hackernoon/deploying-a-phoenix-1-3-umbrella-app-to-heroku-452436b2b37f
Heroku 构建包基于早期版本对你的项目做了一些假设,但是稍作调整就可以用于 1.4 版的 Elixir 和 1.3 版的 Phoenix 。
这假设您使用mix phx.new hello_phoenix --umbrella创建了您的项目。在适当的地方用你的应用名称替换 hello_phoenix 和 HelloPhoenix。
http://www.phoenixframework.org/docs/heroku 的大部分指令仍然有效。完成这些操作,然后进行以下更改:
- 这可能是显而易见的,但提到的
config/prod.exs是 web app 文件夹中的那个:hello_phoenix_umbrella/apps/hello_phoenix_web/config/prod.exs。 - 将
prod.exs中的参考从HelloPhoenix.Endpoint更改为HelloPhoenix.Web.Endpoint。 - 你还需要从
hello_phoenix_umbrella/config/prod.exs中移除import_config "prod.secret.exs"。 - 在项目的根目录下创建一个名为
phoenix_static_buildpack.config的文件,并添加下面一行phoenix_relative_path=apps/hello_phoenix_web。 - 将 Procfile 中的行改为
web: MIX_ENV=prod mix phx.server。 - 如果您的应用程序使用数据库,您可以将这一行添加到 Procfile 中,以便在发布时运行迁移:
release: mix ecto.migrate。 - 创建一个名为
elixir_buildpack.config的文件,并设置您的 Erlang 和 Elixir 版本以及运行时路径(/app 是您的项目的根):
erlang_version=19.1
elixir_version=1.4.2
runtime_path=/app
如果您使用 Elm:
在 Phoenix buildpack 中有一个关于支持 Elm 的未决问题🤗。现在,如果你正在用 elm-brunch 编译你的 Elm 应用程序,你可以把elm作为一个依赖项添加到你的apps/hello_phoenix_web/assets/package.json中。
黑客中午是黑客如何开始他们的下午。我们是 @AMI 家庭的一员。我们现在接受投稿,并乐意讨论广告&赞助机会。
要了解更多信息,请阅读我们的“关于”页面、在脸书上点赞/给我们发消息,或者简单地说, tweet/DM @HackerNoon。