在Heroku中部署Phoenix应用程序,但导致应用程序错误

在Heroku中部署Phoenix应用程序,但导致应用程序错误,heroku,deployment,web-deployment,phoenix-framework,phoenix,Heroku,Deployment,Web Deployment,Phoenix Framework,Phoenix,我在Heroku中部署了我的应用程序,但尽管部署正常,但在浏览器显示视图中: 错误的唯一线索在应用程序日志中: : State changed from crashed to starting 2017-03-31T020 heroku[web.1]: Process exited with status 1 1]: Starting process with command `MIX_ENV=prod mix phoenix.server` =INFO REPORT==== 31-M

我在Heroku中部署了我的应用程序,但尽管部署正常,但在浏览器显示视图中:

错误的唯一线索在应用程序日志中:

  : State changed from crashed to starting
2017-03-31T020 heroku[web.1]: Process exited with status 1
1]: Starting process with command `MIX_ENV=prod mix phoenix.server`

 =INFO REPORT==== 31-Mar-2017::02:20:04 ===
     application: boom_one
     exited: {{shutdown,
               {failed_to_start_child,'Elixir.BoomOne.Endpoint',
                {shutdown,
                 {failed_to_start_child,'Elixir.Phoenix.Endpoint.Server',
                  {shutdown,
                   {failed_to_start_child,
                    {ranch_listener_sup,'Elixir.BoomOne.Endpoint.HTTP'},
                    {'EXIT',
                     {noproc,
                      {gen_server,call,
                       [ranch_server,
                        {set_new_listener_opts,'Elixir.BoomOne.Endpoint.HTTP',
                         16384,
                         [{env,
                             [{'_',[],
                               [{[<<"socket">>,<<"websocket">>],
                           [{dispatch,
                                 [],'Elixir.Phoenix.Endpoint.CowboyWebSocket',
                                 {'Elixir.Phoenix.Transports.WebSocket',
                                  {'Elixir.BoomOne.Endpoint',
                                   'Elixir.BoomOne.UserSocket',websocket}}},
                                 {'Elixir.BoomOne.Endpoint',
                                {'_',[],'Elixir.Plug.Adapters.Cowboy.Handler',
                                  []}}]}]}]}]}]}}}}}}}}},
              {'Elixir.BoomOne',start,[normal,[]]}}
     type: permanent
 ** (exit) exited in: GenServer.call(Mix.State, {:get, {Map, :get, [:debug, false]}}, 5000)
     ** (EXIT) no process
     (mix) lib/mix/cli.ex:65: Mix.CLI.run_task/2
     (elixir) lib/code.ex:363: Code.require_file/2
     (elixir) lib/gen_server.ex:596: GenServer.call/3

 {"init terminating in do_boot",{noproc,{gen_server,call,[elixir_config,{get_and_put,at_exit,[]}]}}}

 init terminating in do_boot ()
 Crash dump is being written to: erl_crash.dump...done
1]: Process exited with status 1
1]: State changed from starting to crashed
:状态从崩溃更改为启动
2017-03-31T020 heroku[web.1]:进程退出,状态为1
1] :使用命令'MIX_ENV=prod MIX phoenix.server启动进程`
=信息报告===2017年3月31日::02:20:04===
应用:boom_one
退出:{{关闭,
{启动孩子'Elixir.BoomOne.Endpoint'失败,
{关闭,
{启动子项'Elixir.Phoenix.Endpoint.Server'失败,
{关闭,
{启动子项失败,
{ranch_listener_sup,'Elixir.BoomOne.Endpoint.HTTP'},
{'EXIT',
{noproc,
{gen_服务器,呼叫,
[ranch_服务器,
{set_new_listener_opts,'Elixir.BoomOne.Endpoint.HTTP',
16384,
[{env,
[{'_',[],
[{[,],
[{发送,
[],'Elixir.Phoenix.Endpoint.CowboyWebSocket',
{'Elixir.Phoenix.Transports.WebSocket',
{'Elixir.BoomOne.Endpoint',
'Elixir.BoomOne.UserSocket',websocket}},
{'Elixir.BoomOne.Endpoint',
{'''',[],'Elixir.Plug.Adapters.Cowboy.Handler',
[]}}]}]}]}]}]}}}}}}}}},
{'Elixir.BoomOne',开始,[normal,[]]}
类型:永久性
**(退出)退出:GenServer.call(Mix.State,{:get,{Map,:get,[:debug,false]},5000)
**(退出)无流程
(mix)lib/mix/cli.ex:65:mix.cli.run_task/2
(elixir)lib/code.ex:363:code.require\u文件/2
(elixir)lib/gen_server.ex:596:GenServer.call/3
{“init终止于do_boot”{noproc,{gen_server,call,[elixir_config,{get_and_put,at_exit,[]}}
初始化终止于do_引导()
正在将崩溃转储写入:erl_Crash.dump…完成
1] :进程已退出,状态为1
1] :状态从开始更改为崩溃
我遵循了这一点


提前谢谢

我遇到了同样的问题,并通过硬编码“secret\u key\u base”设置而不是读取系统环境变量来解决它。通常不建议使用此解决方案,因为它会在代码存储库中公开密钥,但可能有助于调试此问题。

此问题有解决方案:

如何看待,将我的长生不老药版本从1.3改为1.4


谢谢

感谢Gal T.,我在prod.exs文件中设置了硬编码“secret\u key\u base”,但错误仍然存在。