Go hosting on Fly.io:
ship a single binary with one command

Build and scale Go apps on a developer-focused public cloud.

Launch Now

Ready, Set, Go!

Speedrun Your Go App Onto Fly.io

Deploy a Go app to Fly.io in a few minutes with the Fly.io command line tool, flyctl.

Get Started
> Install flyctl on GNU/Linux
$ curl -L https://fly.io/install.sh | sh
 
> Run from Go project root
$ fly launch
 
> Scale CPU, memory, instances & regions
$ fly scale

Not on GNU/Linux? Install flyctl for your platform.

Up, Up, and Away!

Unleash the Full Potential of Go with Fly.io

Run fly launch from your Go project root. It scans the source, writes a fly.toml and a Dockerfile that compiles your app (or uses the Dockerfile you already have) and offers to create a database. Every release after that is one fly deploy, with no servers to provision and no load balancer to configure.

Effortless Scaling Made for Go

Go Was Born to Be Concurrent & Fly.io Runs Every Process

Go's true strength lies in its ability to handle massive concurrency with lightweight goroutines. On Fly.io, one image can run your web server, workers and cron jobs: define them in [processes] and each runs as its own process group, scaled on its own with fly scale count. They reach each other over Fly.io's built-in private WireGuard network, so your microservices work together just like they were designed to.

NEW!

Managed Postgres for Go Projects

Focus on features and leave database management to Fly.io. Our Managed Postgres service, gives you:

  • Automatic backups and recovery
  • High availability with automatic failover
  • Performance monitoring and metrics
  • Resource scaling (CPU, RAM, storage)
  • Automatic encryption of data at rest and in transit
Learn More

Quick and Easy Set-up

From Concept to Launch, Faster Than Ever

Starting fresh with Fly.io feels like a breeze. We've streamlined the process for hassle-free deployment of your Go applications. Move fast from development to deployment, ensuring your app is up and running in no time and build on the performance perks that come with Fly.io.

Try It Now!

Zero-Downtime Releases

Ship Every Release Without Taking Your App Down

Each fly deploy rolls the new image out Machine by Machine. Set the bluegreen strategy and new Machines boot alongside the old ones, with traffic moving only after their health checks pass. Put migrations in release_command and they run once per deploy, in a temporary Machine from the new image, before any Machine is updated.

Pay for What Runs

Idle Machines Stop, Requests Start Them

Fly Proxy stops your Go app's Machines when they sit idle and starts them again on the next request. Stopped Machines aren't billed for CPU or RAM, and started ones bill per second, so you pay no CPU or RAM for the hours nobody calls your service.

Secure, Private Networking

Build with Confidence

Build with confidence knowing your Go services are protected with built-in secure, private networking, keeping your data safe and your connections secure, without compromising Go's legendary performance.

  • Managed TLS and Secrets

    Fly Proxy terminates TLS for your Go app with managed certificates. fly secrets set stores API keys and database URLs encrypted and exposes them to your Machines as environment variables, so your binary reads them with os.Getenv.

  • Secure, Private Networking

    Build with confidence knowing your Go services are protected with built-in secure, private networking, keeping your data safe and your connections secure, without compromising Go's legendary performance.

  • Built-in Observability

    Get insight into your Go app's performance with Fly.io's built-in observability tools. Monitor, troubleshoot, and optimize your Go applications with real-time metrics, logging, and profiling tools that work perfectly with Go's runtime.