Resources
Resources are the things you run and store on the platform. Every resource lives inside an Environment (see Organizations, Projects & Environments), and there are four types:
| Type | What it is |
|---|---|
| Web Application | HTTP service with a web endpoint |
| Background Worker | Long-running process without HTTP |
| Database | Managed database instance |
| Object Storage | S3-compatible bucket for files and images |
Every resource has a name made of lowercase letters, numbers, and hyphens. Pick it carefully — for apps it is used in URLs and DNS.
Web Application
A Web Application is a service that speaks HTTP. You choose a framework (Ruby on Rails, Node.js, Python, Go, Rust, or Static Files — see Supported Frameworks for caveats), a listening port, and a health-check path; the platform builds your code with buildpacks and runs it.
The platform hosts a Git repository for your app. After creating it you get a remote to push to — pushing to the main branch triggers a build and deployment. Push to it directly, or link a GitHub or GitLab repository so pushes there deploy automatically — see Deploy from GitHub or GitLab.
You control how many instances run, and CPU and memory limits per instance. Guides:
Background Worker
A Background Worker is a long-running process without HTTP — queue consumers, schedulers, bots. It builds and deploys exactly like a Web Application (same frameworks, same git-push flow, same scaling, logs, and console access); it just has no public URL, and its optional health check can be a command run inside the instance as well as an HTTP path.
Database
A Database is a managed database instance. Four engines are available: PostgreSQL, Redis, MariaDB, and MongoDB.
You don’t manage credentials by hand: attach a database to an app and the platform injects a connection-string environment variable (named DATABASE_URL by default) into that app.
PostgreSQL and MariaDB databases are backed up automatically; restoring from a backup requires contacting support.
Object Storage
An Object Storage resource is an S3-compatible bucket for files and images, with an optional size quota (in GB). The High availability storage tier may not yet be offered in Production-type Environments on your installation; the default Capacity tier is. Each bucket gets its own public URL, assigned shortly after creation; making the bucket public lets anyone read its objects at that URL, while a private bucket refuses public reads. The CLI can print S3-compatible credentials for use with standard S3 tooling (paas buckets creds).
Creating resources
In the dashboard, open the Environment (for example acme → shop → production) and choose Add Resource. The form asks only for what the selected type needs: source and sizing for apps, an engine for databases, an optional quota for buckets.
From the CLI, apps and databases have their own command groups:
paas apps list -o acme -p shop -e production
paas apps create --help # flags for creating a web app or worker
paas dbs create --help # flags for creating a database
paas buckets works with the Object Storage resource selected with -a (-a media) — see the Object Storage Buckets guide for the full flow.