Как установить Docker и Docker Compose на Debian 11
На этой странице
- Предпосылки
- Начало работы
- Установить Docker
- Управление службами Docker
- Запуск контейнера с помощью Docker
- Установите Docker Compose
- Команды Docker Compose
- Заключение
Docker — это бесплатная платформа с открытым исходным кодом для разработки, доставки и запуска приложений в контейнерной среде. Это позволяет вам отделить ваше приложение от вашей инфраструктуры. Это упростит, упростит и сделает более безопасным создание, развертывание и управление контейнерами. Docker предназначен для настройки локальной среды разработки.
Если вы хотите создать более одного контейнера для своего приложения, вам следует использовать Docker compose. Docker-compose — это инструмент, используемый для определения и совместного использования мультиконтейнерных приложений. С Docker compose вы можете использовать файл YAML для определения всех служб и одновременного запуска их с помощью простой команды.
В этом руководстве мы покажем вам, как установить Docker и Docker compose в системе Debian 11.
Предпосылки
- Сервер под управлением Debian 11.
- На сервере настроен пароль root.
Начиная
Во-первых, рекомендуется обновить кеш системных пакетов до последней версии. Вы можете обновить их с помощью следующей команды:
apt-get update -y
Когда вы закончите, установите другие необходимые зависимости, используя следующую команду:
apt-get install apt-transport-https software-properties-common ca-certificates curl gnupg lsb-release -y
Установить Докер
По умолчанию последняя версия Docker не включена в официальный репозиторий Debian 11. Поэтому вам нужно будет добавить репозиторий Docker CE в APT. Вы можете добавить его с помощью следующей команды:
curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
После добавления репозитория Docker обновите репозиторий и установите Docker CE с помощью следующей команды:
apt-get update -y
apt-get install docker-ce docker-ce-cli -y
После установки проверьте версию Docker CE с помощью следующей команды:
docker version
Вы должны получить следующий результат:
Client: Docker Engine - Community Version: 20.10.8 API version: 1.41 Go version: go1.16.6 Git commit: 3967b7d Built: Fri Jul 30 19:54:22 2021 OS/Arch: linux/amd64 Context: default Experimental: true Server: Docker Engine - Community Engine: Version: 20.10.8 API version: 1.41 (minimum version 1.12) Go version: go1.16.6 Git commit: 75249d8 Built: Fri Jul 30 19:52:31 2021 OS/Arch: linux/amd64 Experimental: false containerd: Version: 1.4.9 GitCommit: e25210fe30a0a703442421b0f60afac609f950a3 runc: Version: 1.0.1 GitCommit: v1.0.1-0-g4144b63 docker-init: Version: 0.19.0 GitCommit: de40ad0
Управление службами Docker
Вы можете легко управлять службой Docker с помощью утилиты systemd.
Чтобы запустить службу Docker, выполните следующую команду:
systemctl start docker
Чтобы перезапустить службу Docker, выполните следующую команду:
systemctl restart docker
Чтобы остановить службу Docker, выполните следующую команду:
systemctl stop docker
Чтобы служба Docker запускалась при перезагрузке системы, выполните следующую команду:
systemctl enable docker
Чтобы проверить статус Docker, выполните следующую команду:
systemctl status docker
Вы должны увидеть статус Docker в следующем выводе:
? docker.service - Docker Application Container Engine Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2021-09-10 07:19:35 UTC; 27s ago TriggeredBy: ? docker.socket Docs: https://docs.docker.com Main PID: 29018 (dockerd) Tasks: 7 Memory: 32.6M CPU: 407ms CGroup: /system.slice/docker.service ??29018 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock Sep 10 07:19:34 debian11 dockerd[29018]: time="2021-09-10T07:19:34.809035575Z" level=info msg="scheme \"unix\" not registered, fallback to def> Sep 10 07:19:34 debian11 dockerd[29018]: time="2021-09-10T07:19:34.809219999Z" level=info msg="ccResolverWrapper: sending update to cc: {[{uni> Sep 10 07:19:34 debian11 dockerd[29018]: time="2021-09-10T07:19:34.809410545Z" level=info msg="ClientConn switching balancer to \"pick_first\"> Sep 10 07:19:34 debian11 dockerd[29018]: time="2021-09-10T07:19:34.897972507Z" level=info msg="Loading containers: start." Sep 10 07:19:35 debian11 dockerd[29018]: time="2021-09-10T07:19:35.186940748Z" level=info msg="Default bridge (docker0) is assigned with an IP> Sep 10 07:19:35 debian11 dockerd[29018]: time="2021-09-10T07:19:35.298681937Z" level=info msg="Loading containers: done." Sep 10 07:19:35 debian11 dockerd[29018]: time="2021-09-10T07:19:35.356364773Z" level=info msg="Docker daemon" commit=75249d8 graphdriver(s)=ov> Sep 10 07:19:35 debian11 dockerd[29018]: time="2021-09-10T07:19:35.357524464Z" level=info msg="Daemon has completed initialization" Sep 10 07:19:35 debian11 systemd[1]: Started Docker Application Container Engine. Sep 10 07:19:35 debian11 dockerd[29018]: time="2021-09-10T07:19:35.401626151Z" level=info msg="API listen on /run/docker.sock"
Запустите контейнер с помощью Docker
Вы можете использовать команду docker run, чтобы загрузить любой образ и запустить его внутри контейнера.
Например, выполните следующую команду, чтобы загрузить образ Debian и запустить контейнер:
docker run --rm -it --name test debian:latest /bin/sh
Вы должны получить следующий результат:
Unable to find image 'debian:latest' locally latest: Pulling from library/debian 955615a668ce: Pull complete Digest: sha256:08db48d59c0a91afb802ebafc921be3154e200c452e4d0b19634b426b03e0e25 Status: Downloaded newer image for debian:latest #
Выполните следующую команду, чтобы выйти из контейнера Debian.
#exit
Установите Docker Compose
По умолчанию Docker compose недоступен в репозитории по умолчанию Debian 11. Поэтому вам нужно скачать двоичный файл Docker compose с Github.
Выполните следующую команду, чтобы загрузить бинарный файл Docker compose:
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
mv docker-compose-Linux-x86_64 /usr/bin/docker-compose
Затем проверьте версию компоновки Docker с помощью следующей команды:
docker-compose version
Вы должны увидеть следующий вывод:
docker-compose version 1.29.2, build 5becea4c docker-py version: 5.0.0 CPython version: 3.7.10 OpenSSL version: OpenSSL 1.1.0l 10 Sep 2019
Команды Docker Compose
Чтобы запустить файл компоновки Docker, выполните следующую команду:
docker-compose up -d
Чтобы остановить все запущенные контейнеры, выполните следующую команду:
docker-compose down
Чтобы приостановить и возобновить работу контейнера, выполните следующую команду:
docker-compose pause
docker-compose unpause
Чтобы получить список всех запущенных контейнеров, выполните следующую команду:
docker-compose ps
Чтобы проверить журналы запущенных служб, выполните следующую команду:
docker-compose logs
Заключение
Поздравляем! вы успешно установили Docker и Docker Compose в Debian 11. Теперь вы можете создавать, отправлять и запускать свое приложение с помощью Docker и Docker Compose.