Production release configuration #46

Open
opened 2026-09-26 13:58:43 +00:00 by belvedere · 0 comments
Collaborator

Objective: The app can actually be deployed, not just run in dev.

Files:

  • Modify: config/runtime.exs, mix.exs (releases), Dockerfile

Steps:

  1. Read DATABASE_URL, SECRET_KEY_BASE, PHX_HOST, and the auth signing secret from env in
    config/runtime.exs; fail loudly at boot when missing rather than defaulting.
  2. mix release with assets.deploy in the release pipeline.
  3. Verify migrations run as a release step (/app/bin/migrate), not on boot.

Verify: build the image, run migrations, boot, and load the home page.

**Objective:** The app can actually be deployed, not just run in dev. **Files:** - Modify: `config/runtime.exs`, `mix.exs` (`releases`), `Dockerfile` **Steps:** 1. Read `DATABASE_URL`, `SECRET_KEY_BASE`, `PHX_HOST`, and the auth signing secret from env in `config/runtime.exs`; fail loudly at boot when missing rather than defaulting. 2. `mix release` with `assets.deploy` in the release pipeline. 3. Verify migrations run as a release step (`/app/bin/migrate`), not on boot. **Verify:** build the image, run migrations, boot, and load the home page.
Sign in to join this conversation.
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
nickkeers/first-thousand-words#46
No description provided.