compose-cli/INSTALL.md

3.1 KiB

Mac and Windows installation

The Compose CLI is built into Docker Desktop Edge and Stable. You can download it from these links:

Ubuntu Linux installation

The Linux installation script and manual install instructions have been tested with a fresh install of Ubuntu 20.04.

Prerequisites

Install script

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

Manual install

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 using echo $PATH. You can find the path to the existing Docker CLI using which 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
...

Uninstall

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

Testing the install script

To test the install script, from a machine with docker:

docker build -t testclilinux -f scripts/Dockerfile-testInstall scripts