Как установить Docker Compose в Linux
Как установить Docker Compose в Ubuntu 20.04 / 18.04 / Debian 10 / CentOS 8 / Fedora 33/32/31 ?. Это руководство покажет вам, как установить последнюю версию Docker Compose в Linux. Compose — это инструмент для определения и запуска многоконтейнерного приложения Docker. Файл YAML используется для настройки служб вашего приложения.
Этот пост представляет собой краткое пошаговое руководство для разработчиков и системных администраторов, которые хотят настроить Docker Compose в Linux. Мы проверим страницу выпусков Github API для проекта и загрузим последний двоичный файл.
Установите последнюю версию 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
Добавить пользователя в группу докеров:
sudo usermod -aG docker $USER
newgrp docker
Настройка завершения Compose из командной строки
В Compose есть завершение команд для оболочки 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 документацию , чтобы узнать больше