Tutorial: Host Ghost 5 + MySQL 8 on Fly.io Free Tier

After a lot of tinkering, I have found a way of running Ghost 5 in production with MySQL 8 on Fly’s free tier! Here is a tutorial with the script I used:

Let me know if you run into any issues following the tutorial; it’s brand new so there may still be bugs that need to be worked out :slight_smile:

1 Like

Pretty cool, thanks!

I just switched to Fly.io as well (using SQLite) and I found out that I faced an OOM error when the internal Ghost worker is seeking upgrades. Unfortunately, I believe there’s no way to disable this worker.

So, Fly.io is pretty neat but really too tight to ensure decent stability.

1 Like

Thanks for your reply @eexit.

I recently posted a few more tips here, and #2 might be helpful:

TL;DR = If you aren’t already making use of the fact, Fly forgives monthly bills under $5, which means you can double the amount of RAM to 512 MB without actually getting charged.

I have had a Ghost site running on Fly using SQLite (following my previous tutorial for development mode) with 256MB RAM for months without any OOM issues, but perhaps running SQLite in production (with a slightly more complex configuration) uses more RAM.

Ah, I see you are already making use of that from your post image :slight_smile: How much RAM does your instance have, 256MB or 512?

I’m assuming you’ve tried setting the privacy__useUpdateCheck environment variable to false and it didn’t disable the update worker… ?