Feedback: First use of Fly.io

Hi,

I just wanted to share my feedback about my first use of Fly.io.

I have seen Fly.io very present in the Elixir community notably due to your blog articles (which are of great quality). For a small experiment I decided to give a try instead of AWS ECS which I’m used to setup. Even better, a free tier is available to launch my app. I created my project, a traditional Elixir/Phoenix application with PostgreSQL (I used the add-on provided by Fly.io) and everything went great for a while.

I was adding some features and deploying few times a day and then started to get 2 issues very annoying. My deployment was starting to freeze without notice and take few hours before I could actually do anything. The deployment shown that the application logs was “cleaning up” but nothing after that. I could observe the new version wasn’t deployed and my application was blocked to the previous version. I made some research and found several people impacted but without really a solution to that problem. Then, appeared the second issue. Shortly after a deployment (when he was not frozen), I was unable to reach my application and the logs shown an error related to the proxy. Concretely, I was unable to reach my application and getting an 50x error. From my reading it seemed to be caused to traffic coming from another region than the one used to deploy by the application. In this case I was unable to find any related errors on Internet.

After having that issue for a full day, I decided to move my application to AWS. I’m sharing this feedback because originally I really appreciated Fly.io for its product and how easy it was to spawn an app. I hope those issues were caused by my misunderstanding of the service or/and a misconfiguration but being unable to deploy my application and find a solution didn’t let me other choice than going back to known solutions.

Regards,

1 Like

Sounds like you had a lot of trouble even deploying to Fly. Did you get a chance to look at these Elixir specific guides? Fly-isms takes a bit getting used to (especially if you bring in databases), but once you get going, it pretty much is out of the way 99% of the time, just like Lambda / AppRunner / Cloud Run.

Post errors on this forum? Plenty Elixir experts to go around these parts.

This sounds abnormal. Do you have the logs you were seeing? I’m not sure what “cleaning up” logs are!

50x errors happen when our proxy can’t connect to your app instances. Do you know what time you were seeing these issues?

I followed that guide to setup my application and it was pretty easy, it was more during deployment. I don’t remember but I spent 1 or 2 weeks without any issues.

1 Like

Unfortunately, I deleted the application from Fly.io after I migrated. I should probably make another try and share the logs if it happens again.

1 Like

For the proxy issue I got this in the logs:

2023-02-18T20:20:35.140 proxy[eb283d64] cdg [error] instance refused connection

2023-02-18T20:20:39.376 proxy[eb283d64] qro [warn] Could not proxy HTTP request. Retrying in 1000 ms (attempt 10)

2023-02-18T20:20:45.472 proxy[eb283d64] cdg [error] instance refused connection

2023-02-18T20:20:49.544 proxy[eb283d64] qro [warn] Could not proxy HTTP request. Retrying in 1000 ms (attempt 20)

2023-02-18T20:20:55.937 proxy[eb283d64] cdg [error] instance refused connection

2023-02-18T20:21:00.010 proxy[eb283d64] qro [warn] Could not proxy HTTP request. Retrying in 1000 ms (attempt 30)

That usually means the app is listening on 127.0.0.1, or the port in fly.toml isn’t the same as the listening port. We have some docs for troubleshooting that here: Troubleshooting your Deployment · Fly Docs