在我的日志中,当在Heroku生产的Phoenix / elixir应用程序上运行混合任务时,我看到:
2016-11-17 20:18:12.977 191 <190>1 2016-11-17T20:18:12.500325+00:00 app web.1 - - 20:18:12.497 [info] Running MyApp.Endpoint with Cowboy using http://localhost:37878
2016-11-17 20:18:19.484 164 <190>1 2016-11-17T20:18:19.110856+00:00 app web.1 - - 20:18:19.110 [info] Tzdata has updated the release from 2016c to 2016i
2016-11-18 00:27:03.981 191 <190>1 2016-11-18T00:27:03.553073+00:00 app web.1 - - 00:27:03.552 [info] Running MyApp.Endpoint with Cowboy using http://localhost:56534
2016-11-18 01:00:23.352 131 <45>1 2016-11-18T01:00:23.178158+00:00 heroku web.1 - - Stopping all processes with SIGTERM
为什么我会看到&#34; localhost&#34;在他们中?这对我来说是一个糟糕的配置设置吗?我收到R14错误,所以我试图了解这是否属于其中。
答案 0 :(得分:1)
为什么我会看到&#34; localhost&#34;在他们身上?
这是Phoenix正在运行的主机/端口。默认情况下,生产模式中的Phoenix在环境变量PORT
指定的端口上运行:
# config/prod.exs
config :my_app, MyApp.Endpoint,
http: [port: {:system, "PORT"}]
Heroku为每个应用提供PORT
的值(在这种情况下,您37878
2016-11-17 20:18:12.977
和56534
2016-11-18 00:27:03.981
获得enum
。此值在每次部署时都会更改,因此您可能已部署应用程序,手动重新启动它,或者执行了在这些时间触发重新启动的操作。然后Heroku代理从域到当前运行该域的应用程序的端口的流量。
这对我来说是一个糟糕的配置设置吗?
不,这里没有错。