Out Plane

How Out Plane Works

The mental model behind teams, applications, deployments, and the URLs your apps run on.

Out Plane runs your applications and managed databases and keeps them reachable. This page explains the handful of concepts you'll see throughout the console, and how they fit together.

Teams

A team is your workspace. Every application, database, domain, and setting belongs to a team, and so do your members and roles and billing. You can belong to more than one team and switch between them in the console.

The team also names your apps. A team's slug is part of every default URL, as shown below.

Applications

An application is a service Out Plane runs for you. You create one from either source:

  • A Git repository, which Out Plane builds on every push.
  • A container image, which Out Plane runs as is.

Each application has its own build settings, environment variables, ports, volumes, and a chosen size and instance count.

Deployments

A deployment is one build and release of an application. The lifecycle is the same whichever source you use.

Source

Your repository or image. This is the input to a deployment.

Build

For Git apps, Out Plane turns your source into a runnable image, using your Dockerfile if present or Buildpacks otherwise. Image apps skip this step.

Release

The new version replaces the old one and your application becomes Running.

A Git push to the connected branch starts a new deployment automatically, and you can redeploy at any time. Every deployment streams build and runtime logs.

Instances

A running application is served by one or more instances, which are identical copies of your app. Adding instances spreads traffic across them, and each instance gets the same configuration. You control the instance size and count on the Scaling page.

Applications and the URL Format

Expose a port to make an application reachable. A public HTTP port produces a URL of the form:

https://{name}-{port}-{team}.outplane.app

The application name, the port, and the team slug are all part of the hostname, so each public port has its own URL and HTTPS is automatic. You can also attach your own custom domain, expose a public TCP port, or keep a port private for traffic between services inside the team.

Data

There are two ways to keep data.

  • Databases are managed PostgreSQL, provisioned in your team and connected to your apps with environment variables.
  • Volumes are persistent storage attached to an application that survives restarts and redeploys.

Operate

Once an app is running, you manage it with these tools.

Where to Go Next

On this page