我正在尝试使用edeliver部署一个简单的 phoenix 应用程序。昨天经过多次斗争,它奏效了。无论如何,今天我做了一些工作并尝试发布一个新版本:
mix edeliver build release --branch=production # looks fine
mix edeliver deploy release to production # looks fine
mix edeliver restart production # looks fine
如果我ps aux
在我的服务器上运行,我可以看到:
root 29773 0.0 0.0 7620 292 ? S 08:58 0:00 /var/www/elixirhunt.prod/elixirhunt/erts-8.0/bin/epmd -daemon
root 3179 0.0 0.0 4328 356 ? Ss 09:59 0:00 erl_child_setup 1024
root 3060 0.4 9.9 2228364 49992 pts/0 Ssl+ 09:59 0:03 /var/www/elixirhunt.prod/elixirhunt/erts-8.0/bin/beam -- -root /var/www/elixirhunt.prod/elixirhunt -progname var/www/eli
root 3059 0.0 0.1 14860 804 ? S 09:59 0:00 /var/www/elixirhunt.prod/elixirhunt/erts-8.0/bin/run_erl -daemon /var/www/elixirhunt.prod/elixirhunt/tmp/erl_pipes/elixi
所以守护进程正在运行。如果我运行mix edeliver ping production
一切看起来也很好。
当我尝试使用prod.secret.exs中配置的正确端口访问我的服务器时
config :elixirhunt, Api.Endpoint,
http: [port: 4000],
url: [host: "www.elixirhunt.prod", port: 4000],
cache_static_manifest: "priv/static/manifest.json",
server: true
它不起作用:http: //46.101.2.126 :4000/
(昨天它工作得很好)。
我检查了端口 4000 上是否有东西在监听,但似乎没有:
netstat -anp | grep ":4000 "
(void)