hanki.dev

Host Miniflux on Fly.io (for free)

Miniflux is a great minimal rss reader. gmcabrita wrote a guide on how to self-host it on fly.io, and here's a speedrun version of it:

  1. Login to fly if you haven't already: fly auth login
  2. Make a directory for your config file: mkdir miniflux-on-fly
  3. Create empty app on Fly.io: fly launch
    1. Choose name for your app, this will be used as your *.fly.dev domain (unless you use custom domain)
    2. Choose region closest to you
  4. Create database for your Miniflux instance: fly postgres create
    1. Choose database name, doesn't really matter
    2. Select same region as you chose for the app earlier
    3. Configuration: development
    4. Scale single node pg to zero after 1 hour: No
  5. Attach postgres to app: fly postgres attach [POSTGRES APP] -a [MINIFLUX APP]
  6. Add Miniflux username: fly secrets set ADMIN_USERNAME=username
  7. Add Miniflux password: fly secrets set ADMIN_PASSWORD=password
  8. Add these to the autogenerated fly.toml (generated at step 3)
[build]
  image = "docker.io/miniflux/miniflux:latest"

[env]
  RUN_MIGRATIONS = "true"
  CLEANUP_ARCHIVE_READ_DAYS = "30"
  CLEANUP_ARCHIVE_UNREAD_DAYS = "90"
  HTTPS = "true"
  PORT = "8080"

  # Only needed on the first deploy, but you can leave it on
  CREATE_ADMIN = "true"

  # Should be set to whatever your domain is, custom or not
  BASE_URL = "https://APP-NAME.fly.dev"
  1. In same file, under [http_service] set auto_stop_machines to false
  2. Deploy your app: fly deploy

That's it, you should now be able to log in with the username and password you specified. If you want to set up custom domain, check this speedrun guide


✌🏼 Like my content? Subscribe via RSS feed.