Как установить Docker Compose на Ubuntu 20.04/18.04 / Debian 10 / CentOS 8 / Fedora 33/32/31?. Это руководство покажет вам и расскажет, как установить последнюю версию Docker Compose в Linux. Compose - это инструмент для определения и запуска многоконтейнерного приложения Docker. Файл YAML используется для настройки служб вашего приложения.
Этот пост призван стать кратким учебным пошаговым руководством для разработчиков и системных администраторов, стремящихся настроить Docker Compose на Linux. Мы проверим страницу выпуска API Github для проекта и вытащим последний двоичный файл.
Установите последнюю версию Docker Compose в Linux
Для этой операции в вашей системе должен быть установлен curl
. И, безусловно, доступ к Терминалу в качестве пользователя с привилегиями sudo
.
---- CentOS / RHEL -----
$ sudo yum -y install curl
---- Debian / Ubuntu ----
$ sudo apt install -y curl
----- Fedora -----
$ sudo dnf -y install curl
Как только curl
будет установлен, загрузите последнюю версию Compose на свой компьютер Linux.
curl -s https://api.github.com/repos/docker/compose/releases/latest \
| grep browser_download_url \
| grep docker-compose-Linux-x86_64 \
| cut -d '"' -f 4 \
| wget -qi -
Сделайте двоичный файл исполняемым.
chmod +x docker-compose-Linux-x86_64
Переместите файл в соответствующую папку в вашей ОС (см. переменную PATH), например:
sudo mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
Проверьте версию:
$ docker-compose version
docker-compose version 1.28.6, build 5db8d86f
docker-py version: 4.4.4
CPython version: 3.7.10
OpenSSL version: OpenSSL 1.1.0l 10 Sep 2019
Добавить пользователя в группу docker
:
sudo usermod -aG docker $USER
newgrp docker
Настройка завершения командной строки Compose
Compose имеет завершение команды (Command-line completion) для оболочки bash и zsh.
Для пользователей Bash
Поместите сценарий завершения в /etc/bash_completion.d
/.
sudo curl -L https://raw.githubusercontent.com/docker/compose/master/contrib/completion/bash/docker-compose -o /etc/bash_completion.d/docker-compose
Исходник файла или повторный вход в систему, чтобы насладиться функцией завершения.
source /etc/bash_completion.d/docker-compose
Для пользователей Zsh
Загрузите сценарий завершения в свой компьютер: ~/.zsh/completion/
mkdir -p ~/.zsh/completion
curl -L https://raw.githubusercontent.com/docker/compose/master/contrib/completion/zsh/_docker-compose > ~/.zsh/completion/_docker-compose
Включите каталог в свой $fpath
, добавив ~/.zshrc
:
fpath=(~/.zsh/completion $fpath)
Убедитесь, что compinit
загружен или сделайте это, добавив~/.zshrc
:
autoload -Uz compinit && compinit -i
Затем перезагрузите оболочку:
exec $SHELL -l
Тестирование установки Docker Compose
Создайте файл для тестирования Docker Compose:
$ vim docker-compose.yml
Добавьте следующие данные в файл:
version: '3'
services:
web:
image: nginx:latest
ports:
- "8080:80"
links:
- php
php:
image: php:7-fpm
Запустите сервисные контейнеры:
$ docker-compose up -d
Starting root_php_1 … done
Starting root_web_1 … done
Выполним команду, которая покажет запущенные контейнеры:
$ docker-compose ps
Name Command State Ports
-------------------------------------------------------------------------
root_php_1 docker-php-entrypoint php-fpm Up 9000/tcp
root_web_1 nginx -g daemon off; Up 0.0.0.0:8080->80/tcp
Тест пройден успешно. Поэтому уничтожим запущенные контейнеры:
$ docker-compose stop
Stopping root_web_1 ... done
Stopping root_php_1 ... done
$ docker-compose rm -f
Going to remove root_web_1, root_php_1
Removing root_web_1 ... done
Removing root_php_1 ... done
Поздравляю вас с успешной установкой Docker Compose на Linux. Будет не лишним ознакомится с официальной документацией Docker и документацией Docker Compose, чтобы узнать больше полезной информации по эксплуатации.