compose/INSTALL.md

106 lines
3.1 KiB
Markdown

# Mac and Windows installation
The Compose CLI is built into Docker Desktop Edge and Stable.
You can download it from these links:
- [macOS](https://hub.docker.com/editions/community/docker-ce-desktop-mac)
- [Windows](https://hub.docker.com/editions/community/docker-ce-desktop-windows)
# Ubuntu Linux installation
The Linux installation script and manual install instructions have been tested
with a fresh install of Ubuntu 20.04.
## Prerequisites
* [Docker 19.03 or later](https://docs.docker.com/engine/install/)
## Install script
You can install the Compose CLI using the install script:
```console
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](https://github.com/docker/compose-cli/releases/latest).
You will then need to extract it and make it executable:
```console
$ tar xzf docker-linux-amd64.tar.gz
$ chmod +x docker/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.
```console
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](https://docs.docker.com/engine/install/ubuntu/):
```console
$ 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:
```console
$ ./docker/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:
```console
$ 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/docker /usr/local/bin/docker
$ which docker
/usr/local/bin/docker
$ docker version
...
Cloud integration 0.1.6
...
```
# 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:
```console
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:
```console
docker build -t testclilinux -f scripts/Dockerfile-testInstall scripts
```