Unable to deploy Elixir Phoenix app: "Failed due to unhealthy allocations"

When a deployment fails, the first step is to look at a failed VM and see what you can figure out. RAM increases are only useful if the VM had an out of memory error (which you might see in the logs). The health check grace period is only helpful if health checks took too long to pass.

To see the specific VM status, run fly status --all to get a list of VMs. Find one with status failed, then run fly vm status <id>. This will give you a lot more information. Make sure you check the exit code, if it’s 0 it means health check failures, if it’s not zero it’s some issue crashing the process.

2 Likes