Hello, I am a front end developer and trying to work out pricing for a project I am considering hosting on Fly. I haven’t done any devops or infrastructure work so unsure exactly what I will need.
I am looking to build a app that:
Has a postres database
Uses hasura to manage the database
Uses Remix for the front end application
Only needs to run in one region
Are you able to help me work out how many apps, servers I would need? On the free tier, it comes with 3 shared-cpu-1x VMs. How does this relate to the set up I am considering? I am assuming I create an app for the hasura and remix instances and need one volume for the Postgres database?
You could stay on the free tier by running 1 standalone postgres instance, one hasura and one remix. The free tier also includes up to 1GB of Postgres data.
First use fly postgres create, and pick the default standalone 256MB option. Then create the other two apps (Remix and Hasura). Remix should be detected automatically by fly launch.
If you’re familiar with Docker, Hasura should be simple to deploy using their Docker docs as a guide.
Thank you! This is great information and exactly what I was looking for. I am not very good with docker but keen to learn. I really like that as I grow I can look at adding more regions, such a great service you have built.
Will I come across any issues using hasura / Postgres on multiple regions? It will be heavy writes in just one region, with the other regions primarily being just reads.
I noticed there are a few database options. If I select the “Development single node 256 ram 1GB”, can I upgrade that later easily to a production (highly available) database? Or do I need to create a new database and copy all of the data across?
From what I’ve gathered you should be just fine scaling from that after-the-fact as Fly tends to create a cluster even if you’re only launching a single instance—presumably for this delightful situation!
It’s true! Scaling from one Postgres VM to two is very simple. Same with RAM and CPU. Disks are slightly more involved right now (you need to create new disks, scale, then remove the old ones).
Just for the future reference for people who might find this thread doing a similar setup:
256Mb will most likely not be enough for Hasura to run as expected, using a cli-migrations-v3 Docker image.