DriversRecommendedOutdated drivers can make a good PC feel brokenScan driver issues before chasing fixes manually.Scan NowHalloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsSlow PC?RecommendedPC slow today? Run a repair scan before it gets worseResolve common Windows issues and optimize system performance.Scan Now×
FREEDOM251

Freedom251 › Blog › Coolify

How to Run Multi-Server Deployments With Coolify

By Freedom251 Team · · 13 min read

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Coolify can deploy one application image to a primary server and additional standalone servers, creating a separate running instance on each machine. That arrangement is horizontal deployment, not load balancing: requests will not move between servers until you place an external load balancer or equivalent routing layer in front of them.

The reliable setup is therefore a coordinated stack: identical server architectures and proxy choices, an image registry reachable by every machine, an application designed without local-only state, and an independently managed traffic, health-check, and monitoring layer.

As an Amazon Associate I earn from qualifying purchases.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What Coolify multi-server deployment actually does

In a standard Coolify application, one resource runs on one server. Multi-server deployment adds one or more standalone Docker destinations to that application. Coolify deploys the same release to each destination, so every machine runs its own application container or set of containers defined by the application configuration.

It creates instances, not a traffic-balancing service

Attaching a second server does not cause Coolify to distribute HTTP requests. A client still reaches whichever origin, DNS record, proxy, or upstream route you expose. If you send traffic only to the primary server, the additional instance may be running but receive no requests. If you send traffic directly to several addresses without a routing policy, clients can see inconsistent behavior and failures when one address is unavailable.

#1 Best Overall
Sale
TOZO A1 Wireless Earbuds Bluetooth 5.3 Light Weight in Ear Headphones | IPX5 Waterproof,2 Mics for AI Calls,Immersive Premium Sound Bass Headset with Charging Case,32 EQ via App Black
  • [Ultra-Lightweight Ear Buds Designed for Small Ears] Each earbud weighs only 3.7g and features a compact, ergonomic in-ear design made especially for small ears. Secure, low-profile, and comfortable for workouts, all-day wear or overnight sleeping.The ultra-slim profile sits flush in your ear with no hard edges poking or rubbing, so you can even sleep on your side without discomfort.
  • [Immersive Stereo Sound with TOZO OrigX Technology] TOZO OrigX tuning delivers clear vocals, balanced mids, and natural stereo sound for music, podcasts, and videos.
  • [Long Battery Life for Daily Use] Get up to 7 hours of playtime on a single charge, with up to 32 hours total using the charging case—ideal for workdays, commuting, and extended listening sessions.
  • [Bluetooth 5.3 & Stable Connection] Bluetooth 5.3 provides fast pairing, stable wireless performance, and reduced dropouts as you move around home or office.
  • [Deep Bass with Clear Vocals] High-performance drivers produce punchy bass while keeping vocals clean and detailed for everyday listening.

To use the instances together, put a cloud or external load balancer, reverse-proxy tier, or another routing service in front of them. That layer needs health checks and a policy for removing unhealthy instances. Coolify does not create or manage that load balancer.

Coolify is the control plane

Coolify connects to the participating machines over SSH and executes Docker operations on them. The Coolify dashboard is not in the application request path. A request is handled by the reverse proxy and application running on the resource server that the client reaches, while Coolify coordinates deployment, restart, stop, promotion, and removal actions.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Decide whether the application is ready to scale horizontally

Running the same image on several machines is safe only when any instance can handle a request without relying on files or memory that exist on a different instance. Before adding a server, identify every piece of state the process currently keeps.

Move sessions out of process memory

Use a shared session store or stateless, signed session mechanism that every instance can reach. A user whose first request lands on one server must be able to authenticate and continue a session when the next request reaches another server. In-memory sessions tied to one container require sticky routing and still create a failure risk when that container disappears; they are not a good default for this deployment model.

Externalize uploads and generated files

Files written into a container filesystem are local to that instance and can vanish when the container is replaced. Put user uploads, generated reports, and other durable objects in storage reachable from every server. If an application expects a shared filesystem, confirm that its locking and consistency behavior is suitable for concurrent writers; simply copying a directory to each machine does not make it shared.

Share queues, jobs, and caches deliberately

Workers on multiple servers need a common queue or a clear partitioning strategy so that a job is not lost or processed unexpectedly. Caches should be treated as disposable and shared only when the application can tolerate eviction and eventual consistency. A local queue, cache, or scheduler may run twice when two instances start, so review startup jobs and cron-like tasks before deployment.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use a database reachable by every instance

Connection settings, migrations, locks, and transaction behavior must work when clients originate from all participating servers. Run migrations as a controlled release step rather than allowing every instance to race through schema changes at startup. Check firewall rules, connection limits, TLS requirements, and backup procedures for the database endpoint.

Provide a health endpoint

Create an endpoint that reports whether the instance is ready to receive real traffic. A useful readiness check verifies the conditions that matter to requests, such as configuration loading and required datastore connectivity, without performing an expensive operation on every probe. Distinguish readiness from a process-level liveness check: a process can be running while unable to serve requests.

Rank #2
Sale
Smart Watch for Men Women Compatible with iPhone Samsung Android Phone 1.69 inch Full Touch Screen IP68 Waterproof Bluetooh Fitness Tracker Heart Rate/Sleep Monitor (Black)
  • 【IP68 Waterproof Multifunctinal Smart Watch】Torjalph fitness activity tracker smart watch is IP68 waterproof technology ,you can wear it when swimming,handwashing,it's rain-proof which means that you perform multiple exercise modes outside without worrying about sweat or rain corroding your fitness smart watch,and this watch equipped with a 230 mAh large capacity battery magnetic charging ,and this sports activity tracker watch can be used 5-7 days If fully charged.
  • 【Larger 1.83'' Full Screen Watch & Multi-dial Selection】1.83 inch full HD color touch screen smart watch for men / women provides excellent 240*284 resolution image quality ,This Bluetooth smart watch offers a better touch experience and remarkable immersion and ,more than 200 watch faces for you to choose from App"Da Fit ", you can change the dial style according to your mood to wear keeping the world on your wrist
  • 【Accurate Activity Tracker Smart Watch 】sports watch activity tracker uses sweat and dust resistant breathable silicone strap, our Fitness Tracker Smart Watch for Android iOS Phones supports 12 sports modes,walking,running,bicycle,swimming,badminton,basketball,football,rope skipping. This bluetooth calls smart watch for men women is lightweight and stylish, bringing more convenient and relaxing sports experience while also providing more protection.
  • 【Your 24 Hour Personal Daily Health Monitor】Fitness watch for women men full touch screen IP67 waterproof bluetooth smartwatch for Android iOS Phones with heart rate blood pressure monitor multifunction Andriod smart watch with steps counter sleep monitor sports fitness watch, monitoring blood oxygen saturation allows you to understand your physical condition in real time to track fitness progress ,to know your health status in time.
  • 【More Functions Bluetooth Call Smart Watch】This fitness activity smart watch full screen for iPhone and Android phones includes a bunch of new features including:The bluetooth smart watch can hang up the phone, receive and display WhatsAPP /Text /Facebook /Twitter /Messenger reminder.Support sedentary reminder, alarm clock, stopwatch, timer,weather information,music control, remote camera control compatible with Android 5.0 and above or iOS 9.0 and above smartphones.

Keep image and configuration behavior identical

Every destination must be able to run the same image, environment configuration, secrets, migrations, and startup command. Differences in an environment variable, mounted path, system dependency, or feature flag can make one server appear healthy while it behaves differently from the others. Store configuration in a controlled system and document which values are intentionally server-specific, such as a node identifier.

Prerequisites and compatibility checks

Validate every destination in Coolify

Each machine must be validated in Coolify and configured as a standalone Docker destination. Do not assume that a machine reachable by SSH is ready: validation checks the connection and the Docker environment Coolify needs to operate. Resolve validation errors before attaching the server to an application.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use one CPU architecture

Use the same CPU architecture across the deployment, such as AMD64 on every server or ARM64 on every server. A single-architecture image built for one machine may fail to start on another architecture. If a multi-platform build is genuinely required, establish that build process separately and verify that the resulting image and all native dependencies work on each target; the straightforward Coolify arrangement is an architecture-matched fleet.

Match reverse-proxy types

When a proxy is enabled on the participating servers, use the same proxy type everywhere: Traefik on all proxied destinations or Caddy on all proxied destinations. A server without a proxy can still be attached, but its network and TLS behavior must be handled intentionally by the routing layer in front of it. Mixing proxy assumptions can produce different host routing, certificate, or port behavior on otherwise identical instances.

Prepare a registry before the first deployment

Create a Docker registry repository that the primary server, any configured build server, and every additional destination can reach. Authenticate the SSH user configured in Coolify to that registry on every server that must push or pull. The registry must be reachable through the relevant firewall and security-group rules, and credentials must have the minimum permissions needed to publish or retrieve images.

The registry is important because the additional servers pull the published image; they do not repeat the primary build as part of the normal multi-server deployment flow. Test a pull with the same identity and network path Coolify will use, rather than testing only from an administrator workstation.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Step-by-step: attach a second server and deploy

  1. Make the application image-based. In the application, open General. Set Container image to the full name of the registry repository, then save. Use the complete repository path expected by your registry rather than a short local image name.
  2. Confirm the primary server. Open the application’s Servers page and note the server marked Primary Server. This is the original deployment destination and, unless you have configured a separate build server, the machine that builds the release image.
  3. Add the additional destination. On the same page, under Add another server, choose a server that has already passed validation and is configured as a standalone Docker destination. Save the attachment. Repeat this step for each additional server you want the application to run on.
  4. Check prerequisites again. Before deploying, verify architecture, proxy type, registry access, environment variables, external database and storage access, and the application readiness endpoint on the new machine. This catches the most common causes of a deployment that succeeds on one server and fails on another.
  5. Deploy the application. Start the normal application deployment. The primary server, or the configured build server, builds the image and pushes it to the registry. Each additional server pulls the published image and starts its own instance.
  6. Watch every deployment log. Follow the logs for the primary and attached servers. Confirm that image pull, container creation, network setup, proxy configuration, and application startup complete on each destination. A successful build on the primary does not prove that another server could authenticate to or download from the registry.
  7. Verify release consistency. Check that every attached server reports the expected running state and the same image tag or release identifier. Commits, rollbacks, and image tags are intended to match the primary deployment, so investigate any destination that is still serving an older image.
  8. Test each origin before routing users. Reach each server through the origin path you intend to place behind the external load balancer. Exercise authentication, database operations, uploads, background jobs, and the health endpoint. Fix an instance that fails direct testing before adding it to shared traffic.
  9. Configure the external routing layer. Add the verified server addresses to your cloud or external load balancer. Configure DNS, TLS termination or certificate forwarding, firewall and security-group rules, health checks, timeouts, connection draining, and capacity alerts there. These functions remain outside Coolify.

What happens during later deployments

A normal application-wide deployment builds the selected release once on the primary or configured build server, publishes it to the registry, and makes that image available to the attached destinations. The additional servers pull the image instead of independently rebuilding it. This reduces differences caused by separate build environments and gives all instances the same release artifact.

Rank #3
New Bee Guitar Cable 10ft Electric Instrument Bass AMP Cord | 6.35mm Jack, Durable Design, Stage and Home Studio Use, Low Noise Shielded Electric Cord for Bass, Keyboard, Amp, Mixer
  • [Low Noise High Fidelity] New bee guitar cord with 22AWG oxygen-free-copper center conductors provides enhanced signal transfer, the PVC insulation material and the high-density stranded copper double shield provide noise rejection for quiet operation
  • [Ideal for Choice] New bee 1/4 straight and right angle metal connectors, ensures a secure connection in any instrument, pedal, or amp jack. L shape great fro on stage guitar stands
  • [Wide Compatible] Suitable for mixer, power amplifier, microphone, effector, decoder, equalizer, electoronic organ, electric guitar, electric bass and other electronic equipments. Widely used in the installation of smart home, karaoke speaker, professional stage audio, etc
  • [Easy Disassemble] Making incidental repairs quick and easy! Very nice, flexible cable
  • [Dont Hesite to Order] 24 hours customer services and professional technology team are standing by

Because all destinations follow the primary deployment’s commit, rollback, and image tag, treat the registry as part of the release path. Retain the image versions needed for rollback, protect registry credentials, and avoid deleting an image while a destination may still need to pull it.

Deployment completion in Coolify is not the same as application readiness in the routing layer. Allow each instance to finish startup and pass its health check before the load balancer sends it production traffic. If a release changes database schemas or external contracts, use a backward-compatible migration sequence so old and new instances can coexist during rollout.

How to route traffic safely

Use health-based membership

Configure the external balancer to probe the readiness endpoint on every origin and remove an origin that fails. Set probe intervals, failure thresholds, and recovery behavior to match the application’s startup time. A probe that is too aggressive can eject an instance during a normal restart; one that checks only whether a TCP port is open can leave a broken application in rotation.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Choose where TLS terminates

TLS can terminate at the external balancer, at each server’s proxy, or in a deliberately chained arrangement. Whichever design you choose, keep certificate names, forwarded headers, secure-cookie behavior, and redirect rules consistent. Ensure the application trusts only the proxy addresses that are actually allowed to set forwarding headers.

Make network policy symmetric

Permit the balancer to reach the same application ports on every origin. Permit each application server to reach the shared database, object storage, queue, cache, registry, and monitoring endpoints it needs. Restrict administrative SSH access separately from public application traffic, and account for health-check source addresses in security groups and firewalls.

Plan draining and maintenance

Before restarting or deploying one instance, remove it from rotation or use the balancer’s connection-draining feature. Keep at least one healthy destination available when your capacity allows it. Verify that long-lived connections such as WebSockets or server-sent events have compatible timeout and reconnect settings across all origins.

Operating attached servers in Coolify

The application’s Servers page provides per-server controls. You can deploy to, stop, promote, or remove an individual attached server. Promotion makes the selected additional server the primary server and demotes the former primary, which is useful when planned maintenance or a failure requires a change in deployment authority.

Rank #4
BSIMB 15.6" Digital Family Calendar & Chore Chart, No Subscription Fees
  • Digital Family Calendar: BSIMB digital calendar wall touch screen puts an end to your chaotic life. Designed for busy families, the digital calendar keeps you organised and in step with your family. Assign different colours and tasks to each family member to make family scheduling easier and more intuitive.
  • Easy Setup and Auto-Sync: Plug in, connect to WLAN and auto-syn your electric calendar in minutes. Digital wall calendar compatible with Google calendar, iCloud calendar, Outlook calendar, Cozi calendar and Yahoo calendar. Add events directly on the device or through the ecalendar app. Electronic calendar stays current whether you're at work or traveling—no manual updates needed.
  • All-In-One Home Assistant: Smart calendar builds habits and encourage independence with personalised chores. Display daily meal plan to reduce the daily ‘What's for dinner?’ stress. To-do lists keep track of everything you want. Turning chores into valuable achievements with stars and rewards, making life easier and more enjoyable.
  • Manage Anytime Anywhere: BSIMB electronic calendar for family stay connected with the powerful ecalendar app. Access and manage your digital wall calendar anytime, anywhere with free features like stars & rewards, photo screensaver, chore charts, meals plans, to-do lists etc. Electronic planner paid features like Magic Import tailor advanced tools for users with special needs.
  • Stay in Touch with Loved Ones: Share photos or videos from your phone to electronic wall calendar with app, instantly update your life moment, and keep in touch with your family, especially those who are far away; you can also surprise your smart calendar digital wall by sending him a wish card; it's also great for keeping tech-illiterate elders in touch with the youngsters.

Application-wide deploy, restart, and stop actions include the attached servers. A stop operation attempts every server even if one destination is unreachable, so treat an unreachable machine as an independent incident and confirm its eventual state rather than assuming the global action completed everywhere.

Pull-request preview deployments are not deployed to the additional destinations. If reviewers need a preview on another machine, create an explicitly supported preview arrangement rather than expecting the production multi-server attachment to replicate it.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Single server versus multi-server deployment

Decision axis Single-server setup Multi-server deployment
Operational simplicity One Docker destination, one proxy path, and fewer credentials and logs to coordinate. Several validated destinations, registry authentication, release coordination, and per-server observability.
Capacity Capacity is bounded by one machine until you resize or migrate it. Application instances can run on several machines, with traffic distribution supplied by an external routing layer.
Failure isolation A server failure can remove the only application instance. An unhealthy instance can be removed from rotation while other instances continue, provided the external routing and shared dependencies remain available.
Traffic routing DNS or one proxy can point directly to the server. A load balancer or equivalent routing policy, health checks, TLS behavior, and connection draining must be configured outside Coolify.
State management Local files and in-process state may appear to work, though they still need backups. Sessions, uploads, queues, caches, and durable data must be externalized or made safe for independent instances.
Build and registry overhead A local image build can be sufficient for a one-server workflow. The primary or build server publishes an image, and every destination needs registry access to pull it.
Infrastructure cost One server and its supporting services. Additional servers plus any external load-balancing, monitoring, storage, and network services required by the design.

Start with the smallest arrangement that meets measured capacity or availability needs. A second server adds meaningful operational work; it is justified when that work addresses a defined capacity, maintenance, or failure-isolation requirement rather than simply increasing the server count.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Common failure modes and fixes

The second server does not appear as an option

Confirm that it has been validated in Coolify and is configured as a standalone Docker destination. Check the SSH credentials, Docker availability, and server status, then refresh the application’s Servers page. A machine that is merely provisioned but not validated cannot be selected reliably.

Image pull fails on the additional server

Check registry DNS and firewall reachability from that server, then authenticate the Coolify-configured SSH user to the registry on the failing destination. Verify that the repository name in General is complete, that the image tag exists, and that the account has pull permission. A workstation login does not establish credentials for the server’s SSH user.

The image runs on one architecture but not another

Inspect the architecture of every server and the image manifest. Move the fleet to a common architecture or publish and test a compatible multi-platform image. Also check native packages, compiled extensions, and base images that may differ even when the application source is identical.

One server has different proxy behavior

Compare the proxy setting and type on each destination. Use the same Traefik or Caddy choice on proxied servers, and verify host rules, entrypoints, certificates, forwarded headers, and exposed ports. If one server intentionally has no proxy, route to it through a design that does not assume the proxy is present.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Users lose sessions after traffic is distributed

Look for process-local sessions, signing-key differences, or cookies scoped to one origin. Move session data to a shared service or make the session mechanism stateless, and use the same secrets and cookie policy on every instance. Sticky sessions can mask the problem but do not provide the same resilience as shared or stateless session handling.

Uploads or generated files disappear

Check whether the application writes to a container filesystem or a server-local path. Move durable files to shared external storage and update all instances to use the same location and credentials. Do not assume that attaching a second server replicates files from the first.

The balancer sends traffic to a broken instance

Replace a port-only probe with an application readiness check, then verify that the probe uses the correct protocol, host header, path, and expected response. Confirm that firewall rules allow the probe source and that startup and shutdown behavior gives the balancer time to add or remove an instance cleanly.

A global stop or restart appears incomplete

Inspect each server separately. Coolify attempts a global stop across attached destinations even when one is unreachable, so an inaccessible machine may still be running or may need recovery through its provider console. Reconcile the actual container state before re-enabling traffic.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A preview appears only on the primary server

This is expected for pull-request previews: they are not deployed to additional destinations. Use a dedicated preview resource or another workflow when a preview must be reachable from a different server.

Choosing and connecting servers

Coolify’s server documentation describes provider-provisioning options including Hetzner, DigitalOcean, and Vultr, and it also supports manually connected Linux servers. The practical choice is the machine that meets your required CPU architecture, network location, storage, firewall controls, and recovery process.

For a provider-managed machine, follow that provider’s current console or API process to create the server, then activate and validate it over SSH in Coolify. A manually connected Linux server can work just as well when you control its operating system, Docker installation, networking, updates, and access policy. Provider selection does not replace the compatibility checks: every destination still needs the same architecture and proxy assumptions, registry reachability, and access to shared application state.

Pre-deployment checklist

  • Every destination is validated in Coolify and configured as a standalone Docker destination.
  • All servers use the same CPU architecture, or the image has been deliberately built and tested for every architecture in use.
  • Proxied servers use the same proxy type, either Traefik or Caddy.
  • The application does not depend on container-local sessions, uploads, queues, caches, scheduled jobs, or durable files.
  • Databases, object storage, queues, and other shared services are reachable from every instance and have appropriate backups and access controls.
  • A readiness endpoint exists and reflects whether the instance can serve real requests.
  • The full registry repository is set in General under Container image.
  • The Coolify SSH user can authenticate to the registry on the primary, optional build server, and every pulling destination.
  • The image, secrets, environment variables, and startup behavior are consistent across servers.
  • The external load balancer, DNS, TLS, firewall rules, health checks, monitoring, alerts, and capacity plan are ready before production traffic is added.

Bottom line

Use Coolify multi-server deployment when you need the same application release running on several compatible Docker servers. Attach validated destinations through the application’s Servers page, publish the image to a registry that every machine can access, and design the application around shared external state. Then place an independently managed, health-aware load balancer in front of the instances. Without that routing layer, you have multiple deployments—not a balanced service.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

CoolifyDevOpsDockerload balancingmulti-server deploymentself-hosting

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Recommended PC Tool
Recommended PC Tool
Crashes, No Sound, or Screen Glitches?Free driver scan
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.