Установка Docker Compose на Linux: пошаговая инструкция

Установка Docker Compose на Linux
Антон Меринов

Антон Меринов

Автор статьи. Интересы, навыки: Профессиональное администрирование СУБД Oracle Database, веб-разработка, IT-World. Подробнее.

 
 
 

Как установить 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, чтобы узнать больше полезной информации по эксплуатации.

Вас заинтересует / Intresting for you:

Основа операционной системы Li...
Основа операционной системы Li... 1365 просмотров Андрей Волков Wed, 09 Jan 2019, 05:36:45
Сигналы в Linux
Сигналы в Linux 1083 просмотров Fortan Tue, 05 Feb 2019, 16:18:38
Краткая история Linux
Краткая история Linux 1412 просмотров Андрей Волков Wed, 09 Jan 2019, 02:46:59
Процессы Linux
Процессы Linux 2160 просмотров Doctor Wed, 23 Jan 2019, 16:47:24
Войдите чтобы комментировать

apv аватар
apv ответил в теме #10013 30 мая 2021 07:28
Толковая статья. Спасибо!