本文介绍了Edeliver-成功部署后无法访问端口4000的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用 edeliver 部署一个简单的phoenix应用程序.昨天经过多次奋斗,它奏效了.无论如何,今天我做了一些努力,并试图发布新版本:

I'm trying to deploy a simple phoenix app with edeliver. Yesterday after many struggle it worked. Anyway, today I worked on it a bit and tried torelease a new version:

mix edeliver build release --branch=production # looks fine
mix edeliver deploy release to production # looks fine
mix edeliver restart production # looks fine

如果我在服务器上运行ps aux,我会看到:

If I run ps aux on my server I can see:

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,一切也看起来很好.

So the daemons are running. If I run mix edeliver ping production everything looks fine too.

当我尝试使用在 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上是否有监听程序,但似乎没有:

I checked if something is listening on the port 4000, but it seems not:

netstat -anp | grep ":4000 "

(void)

推荐答案

已解决:config :elixirhunt, Api.Endpoint,是错误的,我的应用程序的名称空间是Elixirhunt.Endpoint.

Solved: config :elixirhunt, Api.Endpoint,was wrong, the namespace of my application is Elixirhunt.Endpoint.

这篇关于Edeliver-成功部署后无法访问端口4000的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-12 10:04