What is Fly?
Fly is an Application Delivery Network (ADN).
It's a global load balancer, a smart reverse proxy, a library of powerful Middleware; it's a CDN that developers like you control.
With Fly, you can…
- Use the Fly API and in one call generate an automatically renewing Let's Encrypt SSL certificate for any domain that you or your customers own.
- Thread all of your applications, backends, functions and services together atop one hostname.
- Unlock potent features from our Middleware library to save developer time and add value to your applications: Server-side authentication and analytics, render speed tracking, geo IP routing, the web application firewall, and more.
- Serve all of your traffic at blazing speeds from a relaible global delivery network with caching and HTTP/2 over SSL.
In a few clicks, your visitors will access your sites faster and more securely and your developers can weave logical magic into a powerful global edge-server network.
Setting up a site
Create a site within Fly by adding a hostname that you own along with your first application, service, function, or backend.
You'll receive a
Next, point your DNS at the
Fly will act as your intelligent load balancer, reliable reverse-proxy and flexible API gateway; you now wield a global network of edge computing goodness. Once connected, you can route to your applications, services, functions, and backends via HTTP Headers and apply Fly Middleware.
With Middleware you can:
- Enforce HTTPS.
- Write code into the edge with AWS Lambda.
- Activate third-party services like Bugsnag, Olark, and more.
- Enable server-side analytics and authentication.
- Do many more nifty things!
As you connect more applications, services, functions, or backends, you can adjust where and how you will route your visitors. For example, you can:
- Mount your application to
- Attach GitHub Pages backend to
- Add a Ghost Blog to
- Direct an API to
We're excited to see what you're going to build!
» Click here to blast off
How much does Fly cost?
Each month, your first 2,000,000 requests and 100GB of transfer are free.
After that, you'll be billed based on how many thousands of requests and GB of bandwidth that you consume:
|Region||Per 1000 Requests||Bandwidth|
Middleware and Rules Multiplier
Each request includes the execution of 2 middleware and 2 rules. Extra middleware/rules work as a request multiplier. If a request runs 4 middleware it is billed as two requests. If a request runs 3 rules and no middleware, it's billed as two requests.
1. Sign up
First things first: create your account.
Signup is free, and so are your first 2,000,000 requests and 100GB of transfer every month.
2. Add a Site
We ask that you provide us with a hostname and, optionally, a name to represent that hostname. Each hostname needs at least one backend. We have many to choose from:
- Self-hosted. Compatible with any configuration.
- GitHub Pages.
- Ghost Blog.
- AWS S3
- AWS Lambda
… And more!
3. Update your DNS
The last step is to point your domain to the Fly servers. We have a handy guide below to help you. We'll then be able to issue a valid SSL/TLS certificate for your domain using the Let's Encrypt API.
Congratulations! Your application is now connected to the Fly Application Delivery Network. You now have Let's Encrypt HTTPS, global load balancing, seamless routing, and access to our growing bounty of powerful middleware.
Wormhole (Recommended): If you're looking for some added security and convenience, you have the option of installing Wormhole, next to your applications.
How to Configure Your DNS with Fly
The first thing you will need is your own domain.
If you have access to your domain registrar or DNS provider, you're ready to proceed!
Ideally, your DNS provider will support one of:
If not, you can use the alternative configuration.
Once you receive your Fly domain, for example:
2re0qxk8fz8pygk1.shw.io, you will need to make a record. Where you see
onehostname.com, that's where you'd enter your custom domain. :
ALIAS: If your provider offers
ALIAS records, it will look similar to this:
|ALIAS|| || |
ANAME: If your provider offers
ANAME records, it will look similar to this:
|ANAME|| || |
Flattened CNAME: If you use CloudFlare, NameCheap, or 123-Reg, you can setup a flattened
CNAME record. If your provider does not offer
CNAME flattening, you may need to use the alternative configuration.
|CNAME|| || |
If your DNS provider does not offer
ANAME records or
CNAME flattening, you can use an an
To do so, you must first get the IP of your Fly.io Hostname. You can do that by using
ping within your terminal.
super@fly ~ $ ping 2re0qxk8fz8pygk1.shw.io PING 2re0qxk8fz8pygk1.shw.io (220.127.116.11)...
Once you have the IP, use it within your
|CNAME|| || |
Once Fly can reach your domain, you will receive receive the green checkmark.
You are now ready to Fly!
You can plug any application, service, backend, or function into Fly. Whether you're self-hosting your own, using a platform like Heroku or threading together many disparate sources, we've got you covered.
Our library is documented: click here.
What are Middleware?
Fly Middleware allow you to implement powerful functions, features, and snippets at the click of a button. Depending on the Middleware, it could add data to the backend request headers, enable analytics, authentication, or security features, change HTML body content, interact with serverless functions, or send custom log or debug information at the end of each request.
What about Beta Middleware?
New Middleware join the party often. The newest will be marked with the Beta tag. These Middleware can be used free of charge until the tag is removed.
We've got an ever-expanding list of both homemade and third-party Middleware.
You can explore our Middleware Library by clicking here.
Can I write my own?
Almost! If you are interested in writing your own middleware, please email email@example.com. Developers will soon be able to augment their application functionality with custom logic that runs close to users. Middleware can either be specific to a single app, or made available to all fly.io customers.
What is the Wormhole?
The Wormhole is a binary that sits beside your application. It can provide:
- Seamless service discovery.
- Fast and reliable load balancing.
- Encryption between our edge-servers and your application
With Fly + Wormhole, you'll receive Let's Encrypt HTTPS from client-to-Fly and a fast, encrypted tunnel between Fly-and-App; it's true end-to-end encryption.
|Learn More||Download||Open Source|
Our API is now public! It's under heavy development, but the basics are there.
For more information, click here.
We are here to help! We offer email based support. You can email us at firstname.lastname@example.org.
If you need SLAs, guaranteed response times, or things of that nature, please contact us.