Ликероводочный завод Phoenix Elixir не использует правильное соединение с базой данных

Я пытаюсь создать приложение Phoenix с помощью Distillery, однако, когда я пытаюсь запустить скомпилированное приложение, я получаю сообщение об ошибке, не позволяющее улучшить базу данных.

17:44:50.925 [error] GenServer #PID<0.1276.0> terminating
** (KeyError) key :database not found in: [hostname: "localhost", username: "martinffx", types: Ecto.Adapters.Postgres.TypeModule, port: 5432, name: Glitchr.Repo.Pool, otp_app: :glitchr, repo: Glitchr.Repo, adapter: Ecto.Adapters.Postgres, pool_size: 10, ssl: true, pool_timeout: 5000, timeout: 15000, adapter: Ecto.Adapters.Postgres, pool_size: 10, ssl: true, pool: DBConnection.Poolboy]
    (elixir) lib/keyword.ex:343: Keyword.fetch!/2
    (postgrex) lib/postgrex/protocol.ex:76: Postgrex.Protocol.connect/1
    (db_connection) lib/db_connection/connection.ex:134: DBConnection.Connection.connect/2
    (connection) lib/connection.ex:622: Connection.enter_connect/5
    (stdlib) proc_lib.erl:247: :proc_lib.init_p_do_apply/3
Last message: nil

Теперь приведенные выше сведения не соответствуют тому, что я указал в prod.ex

config :glitchr, Glitchr.Endpoint,
  http: [port: {:system, "PORT"}],
  url: [host: "localhost", port: {:system, "PORT"}],
  cache_static_manifest: "priv/static/manifest.json",
  server: true,
  root: ".",
  version: Mix.Project.config[:version],
  secret_key_base: System.get_env("SECRET_KEY_BASE")

config :glitchr, Glitchr.Repo,
  adapter: Ecto.Adapters.Postgres,
  url: System.get_env("DATABASE_URL"),
  pool_size: String.to_integer(System.get_env("POOL_SIZE") || "10"),
  ssl: true

Где мой URL базы данных DATABASE_URL=postgres://glitchr:password@db:5433/glitchr

Это почему? Как я могу отладить то, что я не получаю права?

0 ответов

Другие вопросы по тегам