$ aoox

DocsStart here

aoox documentation

A complete guide to installing and using aoox: from installing it on your own server to deploys, databases, backups, and notifications.

What is aoox?

aoox is a self-hosted PaaS built on Docker. You run it on your own server, then from the web dashboard you can deploy applications from a Git repo, create databases, set up domains, view logs, schedule backups, and receive notifications — without touching docker by hand.

Architecture

browser → WEB_ORIGIN (:3000) · PUBLIC_API_URL (:3001)
webNext.js · dashboard
apiNestJS · Docker Engine API
postgresaoox data
Docker Engine on the host → aoox-app-*aoox-db-*aoox-registryaoox-proxyaoox-compose

Three core containers run from a single compose file. Everything you create from the dashboard — applications, databases, registry, proxy, compose stacks — is just a regular Docker container on the same host, on the aoox network. There are two ways to add more machines: a remote server over SSH, or Docker Swarm to spread replicas of one application.

Core concepts

TermMeaning
ProjectA container for related applications, compose stacks, and databases.
Variable setShared variables with their own environments (development, staging, production), shared with projects and linked to applications and stacks in order.
ApplicationA single Git repo that gets built, or a ready-made image, run as a container (or a Swarm service).
DeploymentOne build → push → start run for an application. Has its own log and status; can be rolled back.
Compose stackA docker-compose file from a repo (or a template) run as a set of containers.
Managed databaseA PostgreSQL/MySQL/MariaDB/Redis container created and backed up by aoox.
ServerAnother host connected over SSH as an additional deploy target, with its own proxy and volume backups.
Node (Swarm)A machine in a Docker Swarm cluster; applications in service mode are spread across these nodes.

Quick path

  1. Install & create the owner account

    Installation → open /setup.

  2. Provision the local registry (and the proxy if you'll use a domain)

    The Registry and Settings → Reverse proxy menus. The registry is required before the first deploy — Registry.

  3. Create a project, then an application from a Git repo

    Projects → New project → New application, click Deploy — Creating an application.

  4. Add what you need

    Domain, database, backups, webhook, notifications — all per application/project, from the dashboard.

Documentation map

A good fit for
aoox is designed for a server you trust (a private VPS, a small team). Instance roles restrict access to infrastructure (terminal, servers, registry, proxy), while per-project membership decides who can see and change which project.

Found a mistake? Edit this page on GitHub ↗