How Frappe Cloud works ​

Frappe Cloud gives your team servers. A server is a virtual machine that belongs to your team only. You choose what runs inside it.

From containers to servers ​

The first version of Frappe Cloud ran your bench as a container. The container shared a server with the benches of other teams. You worked with bench groups, benches, shared servers, and dedicated servers, and each one had its own settings.

Frappe Cloud now gives you a server directly. There is one thing to create and one thing to pay for. Everything inside the server is yours.

v1 · Containers

Server managed by Frappe
Your benchAnother team's benchAnother team's bench
Shared database server

You choose a bench group, then a shared or dedicated server.

v2 · Servers

Your server, a virtual machine
UbuntuorPilot → benches → sites
No other team runs inside it

You choose a server. Everything inside it is yours.

v1: containersv2: servers
What you getA bench in a containerA virtual machine
Who else runs on itOther teams' benches on the same serverNo other team. The server is yours alone.
What you chooseBench group, then a shared or dedicated serverA region, an image, and a plan
Shell accessLimited to your benchRoot access over SSH
What runs insideFrappe benches onlyFrappe with Pilot, or plain Ubuntu

The four systems ​

Four systems work together. You use only the console. The other three work for you in the background.

Central · the consoleTeams, roles, sign-in, billing
Region BOM Mumbai
Atlas · servers, network, proxyCargo · images, storage
Your server erp-production
Pilot
Bench
erp.bom.frappe.cloudhr.bom.frappe.cloud
Each site has its own database and apps
SystemWhat it doesWhat this means for you
CentralTeams, members, roles, sign-in, billing, and the consoleOne account and one bill for all your servers
AtlasRuns the servers in each region: hosts, disks, images, addresses, and web trafficYour server, its snapshots, and its addresses in the region you choose
CargoBuilds the server images and runs regional storageA Frappe server starts with Pilot and a bench already installed
PilotManages benches, sites, and apps inside one Frappe serverA web interface for your sites, backups, and domains

Central ​

Central is the console at the top of every request. It knows your team, your members, and their roles. It checks each request before a region acts on it. It also signs you in to Pilot, so you do not need a second password.

Atlas ​

Atlas is the system that runs servers in a region. Every region is its own Atlas, and one Atlas manages one region. It places your server on a physical host, gives it a disk and network addresses, and boots it from the image you choose. Each server is a Firecracker virtual machine. Read Regions for everything an Atlas does for your servers.

Atlas also carries traffic to your server:

  • A regional proxy receives web requests for *.bom.frappe.cloud names and for your own domains, and sends each one to the right server.
  • A private network connects your servers in the same region over IPv6. A server keeps its addresses when Atlas moves it to another host.
  • Atlas takes and keeps snapshots of your server's disk.

Cargo ​

Cargo builds the Frappe images. It installs Ubuntu, Pilot, and a bench on a build machine, then saves it as an image that Atlas can boot. This is why a new Frappe server is ready in minutes. Cargo also runs the object storage in each region. Read Images for each step of a build.

Pilot ​

Pilot is the bench manager that runs inside a Frappe server. It manages three levels:

  • A bench holds the app code and runs the web and background processes.
  • A site is one Frappe installation with its own database, files, and domain. A bench can run many sites.
  • An app is code that you install on a site, such as ERPNext.

Benches on the same server share it. To keep two workloads apart, put them on different servers. Read What Pilot is.

What runs inside a server ​

You choose an image when you create a server.

ImageStarts withUse it for
FrappeUbuntu 24.04 with Pilot, a bench, and optionally a siteFrappe apps such as ERPNext, Helpdesk, and Raven
UbuntuA clean Ubuntu installationAny other workload, such as a database, a CI runner, or your own service

You can create many sites inside one Frappe server. When you need more room, or want to keep a workload apart, add another server. Read Images to see how each image is built.

Regions and addresses ​

Each server runs in one region. A region is named with the code of its nearest airport. Mumbai is BOM.

The region code is part of every address. In erp.bom.frappe.cloud, erp is the name you choose and bom is the region. The regional proxy serves these addresses over HTTPS, so you do not need a certificate for them.

You can also point your own domain, such as erp.contrail.example, to a site. Pilot gets a certificate for it on your server. Read Domains and SSL.

Your team and your bill ​

Each member sees only the servers of the teams they belong to. Each role decides what a member can do.

Each server has a plan with a monthly price. Your team gets one invoice a month for all its servers and services.

Learn more about each system ​

These projects are open source. Their documentation is written for developers and operators.

See also ​