The Compose CLI is built into Docker Desktop Edge and Stable. You can download it from these links:
The Linux installation script and manual install instructions have been tested with a fresh install of Ubuntu 20.04.
You can install the Compose CLI using the install script:
curl -L https://raw.githubusercontent.com/docker/compose-cli/main/scripts/install/install_linux.sh | sh
You can download the Compose CLI from latest release.
You will then need to rename it and make it executable (the commands below assumes you downloaded the amd64
version of the binary):
$ mv docker-linux-amd64 docker
$ chmod +x docker
To enable using the local Docker Engine and to use existing Docker contexts, you
will need to have the existing Docker CLI as com.docker.cli
somewhere in your
PATH
. You can do this by creating a symbolic link from the existing Docker
CLI.
ln -s /path/to/existing/docker /directory/in/PATH/com.docker.cli
Note: The
PATH
environment variable is a colon separated list of directories with priority from left to right. You can view it usingecho $PATH
. You can find the path to the existing Docker CLI usingwhich docker
. You may need root permissions to make this link.
On a fresh install of Ubuntu 20.04 with Docker Engine already installed:
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
$ which docker
/usr/bin/docker
$ sudo ln -s /usr/bin/docker /usr/local/bin/com.docker.cli
You can verify that this is working by checking that the new CLI works with the default context:
$ ./docker --context default ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
$ echo $?
0
To make the Compose CLI your default Docker CLI, you must move it to a directory
in your PATH
with higher priority than the existing Docker CLI.
Again on a fresh Ubuntu 20.04:
$ which docker
/usr/bin/docker
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
$ sudo mv docker /usr/local/bin/docker
$ which docker
/usr/local/bin/docker
$ docker version
...
Cloud integration 1.0.17
...
To remove this CLI, you need to remove the binary you downloaded and
com.docker.cli
from your PATH
. If you installed using the script, this can
be done as follows:
sudo rm /usr/local/bin/docker /usr/local/bin/com.docker.cli
To test the install script, from a machine with docker:
docker build -t testclilinux -f scripts/Dockerfile-testInstall scripts