I am trying to deploy my app with Gigalixir, but it responds with Internal Server Error
:
# curl https://collaborlist.gigalixirapp.com
Internal Server Error
These logs don’t look good.
# gigalixir logs -a collaborlist
2022-08-31T04:20:36.991297+00:00 collaborlist[gigalixir-run]: Attempting health checks on port 4000
2022-08-31T04:20:37+00:00 collaborlist[gigalixir]: Your app is failing health checks, which means it isn't listening on port 4000 yet.
2022-08-31T04:20:37+00:00 collaborlist[gigalixir]: Readiness probe failed: dial tcp 10.56.51.146:4000: connect: connection refused
2022-08-31T04:20:37.531864+00:00 collaborlist[b'collaborlist-6b87b5c747-vdxcj']: web.1 | started with pid 44
2022-08-31T04:20:40+00:00 collaborlist[gigalixir]: Your app is failing health checks, which means it isn't listening on port 4000 yet.
2022-08-31T04:20:40+00:00 collaborlist[gigalixir]: Readiness probe failed: dial tcp 10.56.51.146:4000: connect: connection refused
2022-08-31T04:20:41.205184+00:00 collaborlist[b'collaborlist-6b87b5c747-vdxcj']: web.1 | 04:20:41.200 [info] Running CollaborlistWeb.Endpoint with cowboy 2.9.0 at :::4000 (http)
2022-08-31T04:20:41.265992+00:00 collaborlist[b'collaborlist-6b87b5c747-vdxcj']: web.1 | 04:20:41.265 [info] Access CollaborlistWeb.Endpoint at http://example.com:443
2022-08-31T04:20:43+00:00 collaborlist[gigalixir]: Stopping container collaborlist
2022-08-31T04:21:13.425143+00:00 collaborlist[gigalixir-run]: Shutting down 'collaborlist' on host 'b'collaborlist-6f84ffff89-5p2qb''
Could it have something to do with my prod.exs
? It says to configure the url host to something meaningful, but I’m not sure what is meant by that. I have tried collaborlist.gigalixirapp.com
as the url as well, and I get the same results.
import Config
# For production, don't forget to configure the url host
# to something meaningful, Phoenix uses this information
# when generating URLs.
#
# Note we also include the path to a cache manifest
# containing the digested version of static files. This
# manifest is generated by the `mix phx.digest` task,
# which you should run after static files are built and
# before starting your production server.
config :collaborlist, CollaborlistWeb.Endpoint,
cache_static_manifest: "priv/static/cache_manifest.json",
url: [host: "example.com", port: 443],
# Do not print debug messages in production
config :logger, level: :info
I have checked that the Elixir and Erlang versions match dev:
elixir_version=1.13.4
erlang_version=25.0
Also, my app is healthy:
# gigalixir ps -a collaborlist
{
"cloud": "gcp",
"pods": [
{
"lastState": {},
"name": "collaborlist-6b87b5c747-vdxcj",
"sha": "a504936d7f3b509a42f9ee2998c87a4f8d56dbc1",
"status": "Healthy",
"version": "2"
}
],
"region": "v2018-us-central1",
"replicas_desired": 1,
"replicas_running": 1,
"size": 0.3,
"stack": "gigalixir-20",
"unique_name": "collaborlist"
}