I used to run about 5 low usage websites on heroku’s free dynos for some friends. After the announcement today that this is no longer possible, I was wondering if I could host these websites under flys free plan. I looked at the free plan and it confuses me. It says with a credit card attached I can have unlimited apps. Would turning off auto scaling ensure that I’m not charged if I go over the months hours? Also is there a sleep time and if so what is it? Thanks.
Hey there – yes, the pricing page is a bit confusing. We’re going to fix that soon! Meantime, here’s the deal.
For free, you can run:
- 3 shared-cpu-1x VMs with 256MB RAM full time
- 3GB storage volumes
- 160GB outbound data transfer
As long as you stay on shared-cpu-1x VMs and provision 3GB or less of storage volumes, you’ll stay in the free tier.
Autoscaling has to do with the number of instances you are running, and it defaults to disabled. As long as you don’t change this, you should be ok.
Hope that makes it a little more clear!
So can I run multiple apps on one vm then? Or is it that you can have unlimited apps but only 3 active. That might be a dumb question but I’m not too familiar with virtualization.
An app runs in its own VM, so you wouldn’t have multiple apps in a single VM.
If it’s useful to think about, billing is by organization, and each org gets its own free allowance of VM/storage. So you could create multiple orgs and add your small apps to each one, and run all of them for free. Maybe don’t go crazy with it, but it’s also totally ok with us if that’s a way for you to run your handful of small apps for free.
Well thanks for all the help!
One could run any number of apps (well, processes) in a single Fly VM (that is, in a single Fly “app”): Need Help Understanding Multi Process Environments, but:
- 256M RAM would likely be the foremost limiting factor.
- 1/15th of the CPU slice is available to a Fly app on the free-tier, which might be another limiting factor: shared-cpu-1x performance on CPU bound tasks
Ideally, one would run one app (made up of one or two processes) in a single Fly app (VM) that fits those constraints (typically, test or dev workloads).