Skip to content

satl compose

Deploy a Compose file as cluster services (stack semantics, not docker compose's).

satl compose up creates one service per compose service on a shared overlay network, scheduled across the whole cluster -- the semantics of docker stack deploy, not of docker compose, because SatL has no standalone containers: every container is a task of a service.

Services are named _ and answer to the compose service name as a DNS alias, so the hostnames inside the file keep working. The project name comes from -p, else COMPOSE_PROJECT_NAME, else the file's name:, else the directory; down removes exactly the objects up labelled with it, and nothing else.

Anything outside the supported subset is refused with the file, the service and the key named, never silently ignored. The subset and every deviation are in docs/api-compat.md (entries 110-124).

$ satl compose [OPTIONS] <COMMAND>

satl compose is a group: it always takes one of the subcommands below.

Options

Option Description
-f, --file <FILE> Compose file to read; found by walking up from the working directory when not given
-p, --project-name <NAME> Project name (default: the project directory's name, normalized)
--project-directory <DIR> Directory env_file paths and the default project name come from

satl compose up

Create or update the stack's networks and services

$ satl compose up [OPTIONS]

Options

Option Description
-d, --detach Accepted for compatibility: up never attaches, so it is always detached (there is no cluster-wide log stream yet)
-f, --file <FILE> Compose file to read; found by walking up from the working directory when not given
-p, --project-name <NAME> Project name (default: the project directory's name, normalized)
--remove-orphans Remove services of this project that the file no longer declares
--project-directory <DIR> Directory env_file paths and the default project name come from

satl compose down

Remove the services and networks this project created

$ satl compose down [OPTIONS]

Options

Option Description
-f, --file <FILE> Compose file to read; found by walking up from the working directory when not given
-v, --volumes Refused: see the message it prints
-p, --project-name <NAME> Project name (default: the project directory's name, normalized)
--remove-orphans Accepted for compatibility: down removes everything labelled with the project, so an orphan is removed either way
--project-directory <DIR> Directory env_file paths and the default project name come from

satl compose ps

List the tasks of the project's services

$ satl compose ps [OPTIONS]

Options

Option Description
-f, --file <FILE> Compose file to read; found by walking up from the working directory when not given
--no-trunc Don't truncate output
-p, --project-name <NAME> Project name (default: the project directory's name, normalized)
-q, --quiet Only display task IDs
--project-directory <DIR> Directory env_file paths and the default project name come from

satl compose config

Print what up would create, without creating it

$ satl compose config [OPTIONS]

Options

Option Description
-f, --file <FILE> Compose file to read; found by walking up from the working directory when not given
-q, --quiet Only validate the file; print nothing
-p, --project-name <NAME> Project name (default: the project directory's name, normalized)
--project-directory <DIR> Directory env_file paths and the default project name come from

Global options

Accepted by every satl command.

Option Description
--host <URL> Daemon socket to connect to (docker-style URL)
Default: unix:///var/run/satl.sock
Environment: DOCKER_HOST
-h, --help Print help
-V, --version Print version

Generated from satl 0.1.0 by make gen. Change it in the SatL source or in overlay/cli.yml, never here.