Возможно ли установить только докер-кли, а не демон

Я хочу, чтобы CLI для докеров подключался к удаленному демонам, но мне нужно установить весь движок, включая демон на локальной машине?

Ответ 1

Если вы хотите установить Docker в Linux, то в последнем выпуске 1.12.0 демон Docker и клиент Docker находятся в отдельных двоичных файлах.

Это было упомянуто в журнале релизов:

Разделите двоичный файл на две части: docker (клиент) и dockerd (демон) # 20639

Если вы устанавливаете Docker в Mac, то двоичный файл Mac OS доступен только для клиента: ресурс

Ответ 2

Сначала загрузите и разархивируйте/распакуйте релиз для своей системы. Вот x86_64 двоичные файлы для Mac, Linux, Windows.

После расширения архива вы можете найти исполняемый файл командной строки docker по адресу ./docker/docker - переместите этот файл на свой путь, и все готово.

Если вы специально хотите установить интерфейс командной строки Docker в образ Docker, вот моя команда Dockerfile, чтобы сделать это:

ENV DOCKERVERSION=18.03.1-ce
RUN curl -fsSLO https://download.docker.com/linux/static/stable/x86_64/docker-${DOCKERVERSION}.tgz \
  && tar xzvf docker-${DOCKERVERSION}.tgz --strip 1 \
                 -C /usr/local/bin docker/docker \
  && rm docker-${DOCKERVERSION}.tgz

ч/т к этому комментарию

Ответ 3

Вы можете (как предлагает другой ответ) скачать его прямо из Docker:

docker_url=https://download.docker.com/linux/static/stable/x86_64
docker_version=18.03.1-ce
curl -fsSL $docker_url/docker-$docker_version.tgz | \
tar zxvf - --strip 1 -C /usr/bin docker/docker

Отличие от другого ответа состоит в том, что нет промежуточного файла tar. Я использую это в слое Dockerfile RUN.