Skip to content

Working with more than one appliance

You will not meet this until you install a second one. With one appliance there is no --instance in embabel --help and no instances verb — the flag exists and works, but it stays out of the help until it means something.

Terminal window
embabel --instance client up # a second appliance, on the next port block
embabel instances # every one installed here, and its ports
EMBABEL_INSTANCE=client embabel logs -f

An instance is a compose project (embabel-<name>), a settings file (.env for the default, .env.<name> beside it), and a block of sixteen ports allocated when it is created. With two installed, any verb that could act on either asks instead of guessing.

You choose the name: lowercase letters, digits, - and _, starting with a letter or digit. It becomes a Docker project name and a filename, so anything else is refused rather than mangled. The default is appliance.

Everything scopes: backup writes embabel-backup-<instance>-<timestamp> and records the instance in its manifest, restore says so when a backup came from a different one, uninstall removes only the instance you name (and keeps the embabel command, the install folder and the images while any other remains), and prune touches only the current instance’s sandboxes. Every compose command run on an instance’s behalf, including the services that finish downloading in the background after the first up, carries that instance’s project, settings file and ports, so installing or working on one never recreates another’s containers.