Fellow tooters: What's the best way these days to deploy a simple Python app with a simple writeable database (bonus if it works with sqlite, which I know you can't use with eg Vercel or Heroku)?

The use case is a classroom environment. Ideally not a Docker setup, because I don't think at this stage you'd want to explain containerization to people.

The answer to this used to be Heroku's free tier, but without it they're a bit pricey I think.

Any ideas?

@ken I recently ported a free heroku app to Fly.io. I'm happy to share my experience, but I'm not sure I can recommend it for your use case. I could only get it to work with Docker.

I specifically had trouble using the buildpacks and SQLite, but I had a lot of trouble finding any docs on the open buildpack ecosystem to track down the issue.

@JoeGermuska Interesting, I'll look into it! I can't help but feel that every day we stray further from god's light (code running on servers in an understandable way).
@ken @JoeGermuska Could you make a GitHub template repo that's prepped to deploy to Fly and then have students spin off repos?
@palewire @JoeGermuska Hm, interesting. I don't know enough about Fly to know if that would work (and would you be able to write to a sqlite db?)
@ken @palewire my sqlite is write local, deploy read-only; i doubt there's a simple way to preserve data across redeployments without a more complicated setup.

@JoeGermuska @ken @palewire Fly.io does have support for persistent volumes so you could store a writable SQLite DB there. I got it to work before I realized my DB was read-only and could be packaged with the app instead.

I think the main challenge with setting up a template repo is that the mechanism for creating a volume is manual and not part of the config definition. https://fly.io/docs/reference/volumes/#creating-volumes

But once it exists it could work!

Volumes

Documentation and guides from the team at Fly.io.

Fly
@ryan @ken @palewire i wonder if you could use Glitch?