Standalone local web app to manage isolated Docker-based Ambrosia instances.
- Node.js 22+
- Docker with either
docker composeordocker-compose - A local Ambrosia source repo available on disk
- Node.js to run the local web server
- Docker Engine to build and run Ambrosia instance containers
- Docker Compose support through
docker composeordocker-compose - A local Ambrosia checkout with
server/andclient/directories
qr.jsvendored undervendor/qr.jsfor local QR generation- Ambrosia icon asset under
public/ambrosia-icon.pngfor the web UI
By default, this manager expects the Ambrosia source repo at:
~/code/ambrosiaIf your Ambrosia repo is elsewhere, set AMBROSIA_SOURCE_DIR before starting the manager.
cd ~/code/ambrosia-instance-manager
npm startThe UI runs on http://127.0.0.1:3010 by default.
Path to the Ambrosia repo used to build instance containers.
Example:
AMBROSIA_SOURCE_DIR=~/code/ambrosia npm startOptional path for instance metadata and per-instance env files.
Example:
INSTANCE_DATA_DIR=~/.local/share/ambrosia-instance-manager npm start- Creates isolated Ambrosia instances with a unified gateway port (Reverse Proxy)
- Automatically routes
/apito the backend and root to the frontend - Lists local instances and their runtime status
- Starts, stops, rebuilds, and deletes instances
- Exposes each instance with a single public URL (Ngrok/Cloudflare compatible)
- Tracks background jobs with progress so actions stay blocked until they finish
By default, instance metadata is stored in:
~/code/ambrosia-instance-manager/.ambrosia-instances