Launching Phoenix with SQLite won't try to run migrations

We’ve released a small quality of life update for folks launching Phoenix apps that are using SQLite!

For apps like this, fly launch will no longer add the release command to fly.toml, which means you’ll have a working deployment with slightly less shenanigans, and slightly more fun!

In depth

If you’ve read through our guides for using SQLite3 with Phoenix, you will have seen a line to remove the release command, like this:

[env]
+ DATABASE_PATH = "/mnt/name/name.db"

-[deploy]
-  release_command = "/app/bin/migrate"

This is necessary because SQLite is persisted to a local mount, the database file is not available to the machine running the release command.

So, while you’ll still need to add a volume to your machine and set the DATABASE_URL with the path to your database, you won’t have to remove the release command.

5 Likes

Added elixir, phoenix-files, sqlite

With Release v0.2.43 · superfly/flyctl · GitHub , the [mount] and ENV will now be set for Phoenix deploys of applications based on sqlite3.

2 Likes