top of page
Cloud, DevOps & Cost

Need a Separate Instance for Each Customer? Deploy It Repeatably

Clients or institutions want their own domain, data or server? We make per-customer deployments fast, consistent and easy to update.

You need a separate instance per customer when clients such as colleges, enterprises or regulated organizations require their own domain, database or server, and setting each one up by hand doesn't scale.

What it means when you need a separate instance for each customer


Your clients, such as colleges, enterprises, hospitals or government bodies, want their own copy of your app: their own domain, their own database, sometimes their own server. Setting each one up by hand takes days, and keeping them all updated is getting harder.


This is the single-tenant model. It's a strong selling point for institutions that need data separation. It only works at scale with a repeatable template and automated updates.



Symptoms: you're in the right place if


  • Clients ask for their own domain, database or server

  • Each new client takes days of manual setup

  • Instances have drifted apart and behave differently

  • Updates are applied to each instance by hand

  • A client wants the app on their own servers


If the second client took as long to set up as the first, it's time for a template.


Business function


Business functions affected: Engineering, Sales, and Operations.


Typical owner: Founder or CTO.


Common stage: EdTech platforms selling to colleges, B2B SaaS selling to enterprises, and products in regulated industries.



Is this the right help for you?


A good fit if:


  • Clients require separate instances

  • Onboarding a client takes too long

  • Updating all instances is risky

  • You're signing more institutional clients


Not the right fit if:


  • Clients only need separated data, not separate instances: consider a multi-tenant design

  • You need a full architecture redesign: see product can't scale with growth



First steps toward repeatable instances


  1. Move client-specific settings out of the code and into configuration

  2. Package the app as a single Docker image

  3. Keep a list of every instance, version and setting

  4. Decide whether clients need separate servers or only separate databases



Business impact: what it costs to leave it unfixed


  • Slow sales: onboarding delays hold up contracts.

  • Inconsistency: instances behave differently.

  • Risky updates: manual updates break some instances.

  • Higher costs: engineers spend time on setup instead of product.



Root causes: why per-customer deployments get messy


Manual setup

Each instance is configured by hand.


Hardcoded settings

Client values are written into the code.


No update process

Updates go out one by one.


No inventory

Nobody knows exactly what runs where.



Common per-customer scenarios


Scenario

Usual cause

First fix

Each college needs its own domain

One shared deployment

A deployment template per college

Updates break some instances

Manual, inconsistent setups

One image and automated updates

Client wants on-premise install

No documented install

A packaged, documented installation

Onboarding takes a week

Manual server and database setup

Infrastructure as code



Per-customer readiness checklist


Every “no” is a likely gap.


Configuration


  • Are client settings separate from code?

  • Does one image run every instance?


Automation


  • Can you create a new instance from a template?

  • Do updates roll out automatically?


Operations


  • Do you have an inventory of instances?

  • Is every instance monitored and backed up?



Potential solution family


Solution type: Deploy. We make every new customer instance fast and consistent.


Solution family: Per-customer deployment engineering: configuration, templates, infrastructure as code and automated updates.



How we fix it: repeatable customer instances


1. Review

Check how the app is configured and deployed.


2. Separate config

Move client settings into configuration.


3. Build a template

Server, database, domain and SSL from one template.


4. Automate updates

Roll out updates to all instances safely.


5. Monitor and back up

Every instance gets monitoring and backups.


6. Document

A guide for onboarding the next client.



Typical timeline


Phase

Typical duration

Deploy one extra instance

1 day

Reusable template

3–5 days

Automated updates and monitoring

1 week


After the template is built, a new client instance usually takes under an hour.



Mistakes to avoid


  • Copying the codebase for each client

  • Hardcoding client settings

  • Updating instances by hand

  • Choosing single-tenant when a multi-tenant design would be cheaper



Required skills




Relevant technologies




Diagnosis offer: start with a fixed-price per-customer deployment


Deploy your next customer from a repeatable setup.


What you get:


  • A new customer instance with its own domain and database

  • Client settings separated from code

  • An update process for all instances

  • A setup guide




Proof


Example engagement: separate instances for partner colleges

An illustrative example based on the pattern we see most often. Client details are kept confidential.


The situation: A coding platform signed two colleges that each wanted their own domain and database.


What we found:


  • College names and settings were hardcoded

  • The first instance had been set up by hand

  • No way to update both together


What we changed:


  • Moved settings into configuration

  • Built a Docker and Terraform template on Hetzner

  • Set up automated updates, monitoring and backups


The result: Both colleges went live, and a new college can now be deployed in under an hour.


Why buyers trust Codersarts

  • Delivering software, cloud and security engineering for clients worldwide since 2018

  • A managed in-house engineering team, not a freelancer marketplace

  • Security engineers who are also developers, so we fix what we find

  • Testing only with written authorization and agreed scope

  • Confidential by default: we sign NDAs before accessing your code or accounts



Frequently asked questions


Should each customer get a separate instance?

When customers need strong data separation, their own domain or custom settings. Otherwise, multi-tenant is usually cheaper.

With one image and an automated process that updates instances in turn, with rollback.

Yes, with a documented install and agreed responsibilities for uptime and updates.

It depends on size and host. On Hetzner, small instances can be very inexpensive per month.



Related problems


bottom of page