Introducing Fly.io

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…

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 shw.io hostname.

Next, point your DNS at the shw.io hostname.

You're done!

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:

As you connect more applications, services, functions, or backends, you can adjust where and how you will route your visitors. For example, you can:

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
North America $0.0035 $0.18
Europe $0.0045 $0.18
Asia Pacific $0.0045 $0.21
South America $0.0055 $0.25
Africa $0.0055 $0.25
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.

Quick start

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:

… 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.

4. Fly

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

DNS Verification

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!

Optimal Configuration

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:

Record Name Content
ALIAS onehostname.com or @ 2re0qxk8fz8pygk1.shw.io

ANAME: If your provider offers ANAME records, it will look similar to this:

Record Name Content
ANAME onehostname.com or @ 2re0qxk8fz8pygk1.shw.io

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.

Record Name Target
CNAME onehostname.com or @ 2re0qxk8fz8pygk1.shw.io

Alternative Configuration

If your DNS provider does not offer ALIAS or ANAME records or CNAME flattening, you can use an an A record.

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 (206.51.242.1)...

Once you have the IP, use it within your A record:

Record Name Target
CNAME onehostname.com or @ 206.51.242.1

Fly!

Once Fly can reach your domain, you will receive receive the green checkmark.

Verfied

You are now ready to Fly!

Applications

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.

Middleware

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.

Middleware Library

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 super@fly.io. 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.

Wormhole

What is the Wormhole?

The Wormhole is a binary that sits beside your application. It can provide:

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

API

Our API is now public! It's under heavy development, but the basics are there.

For more information, click here.

Support

We are here to help! We offer email based support. You can email us at support@fly.io.

If you need SLAs, guaranteed response times, or things of that nature, please contact us.