[email protected]

How-to · PaaS & Cloud Exit

Migrate Fly.io to Coolify or private infrastructure

Editorial note: Versions, commands and prices may change. Please verify critical steps independently before production use. This guide does not replace individual professional, legal or tax advice.

Do you want to leave Fly.io and consolidate application and operations? WZ-IT provides PaaS migration from EUR 1,990 excluding VAT to Coolify, Docker, Kubernetes or another suitable target architecture.

A migration from Fly.io to Coolify or private infrastructure can involve much more than moving a container. Fly.io combines Machines, regions, Anycast, private networking, local volumes, secrets and process groups. Before selecting the target, determine which distribution is a product requirement and which is only an artefact of the current platform.

Capture Fly.io as a running topology

The inventory covers:

  • apps, organisations and active regions
  • Machines, images and process groups
  • configuration in fly.toml and current Machine settings
  • services, ports, protocols and health checks
  • autostart, autostop, scaling and resources
  • secrets and non-secret variables
  • volumes, mounts and Machine attachment
  • private connections across the Fly network
  • public IPs, Anycast, domains and certificates
  • databases, tunnels and external services

fly.toml is a valuable source but may not represent every item of current runtime state. Compare declared configuration, running Machines and external dependencies.

Does global distribution need to remain?

Multiple regions are not a goal by themselves. Before consolidation answer:

  • Where are the actual users located?
  • Which latency is material to the product?
  • Is the application stateless or region-bound?
  • How is data kept consistent across regions?
  • Does distribution provide availability or proximity?
  • Which recovery objectives apply after migration?

A single regional environment can cost less and be easier to operate, but it is not equivalent to an actively distributed application. Decide and test that change deliberately.

Map Machines and process groups

Fly.io layer Possible target mapping
Machine container or workload with a defined resource profile
Process group separate web, worker or job services
Service/port reverse proxy, load balancer or internal endpoint
Health check readiness and liveness checks on the target
Autostop/autostart continuous operations or deliberate scale-to-zero
Secret secret management or protected platform variable
Region location, availability zone or cluster segment

Coolify suits bounded Git- or image-based applications. Kubernetes or a separated architecture can be more appropriate for multiple nodes, dynamic orchestration or complex distribution.

Private networking and public endpoints

Internal Fly.io names and 6PN connections are not directly portable. Define target service names, network segments, firewall rules and outbound connections explicitly. Decide which services require public exposure and which communicate only internally.

Include WebSockets, streaming, fixed outbound IPs, OAuth callbacks, webhooks and partner allow-lists in the test plan. A successful basic HTTP request is not a complete network acceptance test.

Fly Volumes and databases

Fly Volumes provide local persistence in a specific region. They are not automatically replicated shared storage. Determine:

  1. Which Machine writes to each volume?
  2. Are there replicas or one authoritative copy?
  3. How can a consistent export be produced?
  4. Does the target need local, shared or object storage?
  5. How will backup and restore be validated?

Use native database migration methods. Replication or a final delta sync may be required for short outage windows.

Rehearsal and traffic switch

Test the target with realistic data and load assumptions. Pay particular attention to regional behaviour, background processes, network paths, restart, storage and failover. The cutover defines the write boundary, data finalisation, DNS or traffic switch, smoke tests and rollback.

If it is unclear whether consolidation, Coolify or a distributed target fits, the PaaS Exit Review provides a portability and target assessment first.

Sources

Rather have it operated?

You'd rather not run PaaS & Cloud Exit yourself? WZ-IT handles setup, operations and maintenance - privacy-focused from Germany.

Frequently Asked Questions

Answers to the most important questions

Companies worldwide trust WZ-IT

  • Stadtwerke Brühl
  • DGHO e.V.
  • ABCO Water Systems
  • Golem.de
  • EVADXB
  • nextGYM
  • AInergy
  • ml&s
  • Odiseo Solutions
  • Annota
  • ARGE
  • SweetConnect GmbH
  • Aphy AG
  • CORGOS
  • Rekorder
  • SolidProof
  • Yonju
  • Keymate
  • Paritel
  • Mr. Clipart
  • Millenium
  • Negosh
  • Führerscheinmacher
  • Boese VA
Read client reviews

Enquiry

Assess a PaaS migration

Describe the source, application and intended target. We assess the migration path for runtime, data, delivery and ongoing operations.

  • Straight with Timo and Robin - no sales team, no pitch
  • An honest take, including when we are not the right fit
  • Concrete next steps for infrastructure, software or AI

No risk: worst case, you leave with a clearer understanding of your project than before.

WZ-IT's advice on our Azure migration was technically sound and completely non-binding right from the intro call - we took away a great deal.
Jakob ÖschlbergerInno7 GmbH
Timo and Robin, founders of WZ-IT

Assess a PaaS migration

WZ-IT's advice on our Azure migration was technically sound and completely non-binding right from the intro call - we took away a great deal.
Jakob ÖschlbergerInno7 GmbH