Команды Docker

Привет, сегодня 07 февраля 2026г. Изучаем команды запуска контейнеров в Docker.

Начнем с простого:

Команда запуска Docker (docker run):

Эта команда используется для запуска контейнера из образа. Команда docker run представляет собой комбинацию команд docker create и docker start. Она создает новый контейнер из указанного образа и запускает его.

Если образ docker отсутствует, то команда docker run загружает его.

docker run <image_name>
docker run --name <container_name> <image_name>
Чтобы получить справку по остальным параметрам команды, можно выполнить команду docker run --help.

Например, чтобы указать рабочую директорию внутри контейнера используется параметр -w, --workdir (Working directory inside the container):
docker run -v $(pwd):/project \
         -w /project \
         -p 8081:8081 \
Загрузка Docker образа
Эта команда позволяет получить любой образ, который присутствует в официальном реестре Docker, Docker Hub. По умолчанию она получает последний образ, но вы также можете указать версию образа.
docker pull <image_name>

Эта команда позволяет получить любой образ, который присутствует в официальном реестре DockerDocker Hub. По умолчанию она получает последний образ, но вы также можете указать версию образа.

docker pull <image_name>

Список Docker контейнеров (docker ps)

Эта команда (по умолчанию) показывает список всех запущенных контейнеров. С ней можно использовать различные флаги.

  • -a: показывает все контейнеры, остановленные или работающие.
  • -l: показывает нам последний контейнер.
  • -q: показывает только идентификатор контейнеров.
docker ps [options..]

Остановка Docker контейнера

Эта команда позволяет остановить контейнер, если он вышел из строя или вы хотите переключиться на другой.

docker stop <container_ID>

Остановка всех запущенных Docker контейнеров

docker stop $(docker ps -q)

Давайте разберём эту команду:

docker ps -q: выводит список всех идентификаторов контейнеров, docker stop: останавливает контейнер.

Комбинируя эти команды, вы даете Docker указание остановить все контейнеры с идентификаторами, возвращенными командой list.

  • Если контейнеров нет, команда docker stop $(docker ps -q) возвращает ошибку. Чтобы предотвратить это, можно использовать xargs -r:
    docker container ls -q | xargs -r docker container stop — команда пропускает выполнение, когда список контейнеров пуст.
  • Ошибка разрешения — нужно убедиться, что пользователь принадлежит к группе docker, или добавить команды с sudo.
  • Контейнеры не останавливаются корректно (например, из-за висящего процесса) — для принудительной остановки можно использовать команду docker container kill.

Запуск Docker контейнера

Предположим, вы хотите снова запустить остановленный контейнер. Это можно сделать с помощью следующей команды.

$ docker start <container_ID>

Удаление Docker контейнеров

Чтобы удалить контейнер. По умолчанию при создании контейнера ему присваивается идентификатор и вымышленное имя, например confident_boyd, heuristic_villani и т. д. Вы можете указать имя контейнера или его идентификатор.

Некоторые важные флаги:

  • флажок-f: извлеките контейнер с усилием.
  • флаг-v: удалите тома.
  • флаг-l: удалите указанную конкретную ссылку.
$ docker rm {options} <container_name or ID>
docker удаляет изображение

Удаление всех Docker контейнеров

Удаление всех остановленных контейнеров, не удаляя работающих в данный момент.

docker container prune

Удаление всех контейнеров, включая работающие

docker rm -f $(docker ps -aq).

В этой команде:

docker ps -aq — получает все идентификаторы контейнеров в системе;

docker rm -f — удаляет все контейнеры, указанные в списке, с флагом -f (force) — обеспечивает принудительное удаление работающих контейнеров.

Удаление Docker контейнеров по маске

Для удаления всех контейнеров Docker по маске (или по шаблону) используется комбинированная команда. Она включает команды docker ps и grep, которые выводят список контейнеров, соответствующих заданному шаблону, и команду docker rm для удаления.

Объяснение:

  • docker ps -a | grep «шаблон» — выводит список контейнеров, в именах которых есть заданный шаблон.
  • docker rm $(docker ps -a | grep «шаблон» | awk ‘{print $1}’ | xargs docker rm) — удаляет все контейнеры, указанные в списке, с помощью флага -q в команде docker rm.
docker ps -a | grep "pattern" | awk '{print $1}' | xargs docker rm  
  • grep — фильтрует список, чтобы отобразить только те контейнеры, в именах которых есть шаблон.
  • awk ‘{print $1}’ — извлекает первый столбец (идентификатор).
  • xargs docker rm — передаёт идентификаторы, используя xargs.

Удаление Docker образа

Чтобы удалить образ в Docker. Вы можете удалить ненужные образы из локального хранилища Docker, чтобы освободить место

docker rmi <image ID/ image name>

Получение списка образов Docker

Выводит список всех извлеченных изображений, которые присутствуют в нашей системе.

$ docker images

Удаление всех образов одновременно

 Чтобы удалить все образы еодновременно, нужно выполнить следующую команду:

docker rmi $(docker images -q)

Здесь команда docker images -q возвращает список всех ID образов, которые затем передаются в docker rmi для удаления.

Разбор команды:

  • docker images -q — выводит список всех ID образов;
  • $() — конструкция для подстановки результата одной команды в другую;
  • docker rmi — удаляет образы, указанные в списке ID.

docker image prune

Команда docker image prune удаляет все неиспользуемые образы — те, на которые не ссылаются никакие контейнеры. Чтобы удалить все такие образы, нужно выполнить следующую команду:

docker image prune -a

Разбор опции 

-a

:удаляет все неиспользуемые образы, не только промежуточные.

Важно: перед использованием этой команды нужно убедиться, что образы действительно не используются, чтобы случайно не удалить нужные. 

Docker exec

Эта команда позволяет запускать новые команды в работающем контейнере. Эта команда работает только до тех пор, пока контейнер работает. После перезапуска контейнера эта команда не запускается повторно.

Некоторые важные флаги:

  • флаг-d: для выполнения команд в фоновом режиме.
  • Флаг -i: он будет поддерживать STDIN открытым, даже если не подключен.
  • флаг-e: устанавливает переменные среды
$ docker exec {options}

Порты Docker (сопоставление портов)

Чтобы получить доступ к контейнеру Docker из внешнего мира, нам нужно сопоставить порт на нашем хосте (например, на нашем ноутбуке) с портом в контейнере. Именно здесь в игру вступает сопоставление портов.

$ docker run -d -p <port_on_host> 
<port_on_container> Container_name
порт 8080 на хосте сопоставлен контейнеру

Итак, это были 9 самых основных команд Docker, которые должен знать каждый новичок. Контейнеризация — очень обширная тема, но вы можете начать с самых базовых команд и, ежедневно практикуясь, освоить их.

Вход в Docker

Команда Docker login поможет вам пройти аутентификацию в Docker Hub, чтобы вы могли загружать и извлекать свои образы.

docker login 

Вам будет предложено ввести имя пользователя и пароль, после чего вы войдёте в DockerHub и сможете выполнять задачи.

Docker push

После создания собственного образа с помощью Dockerfile вам нужно сохранить его в удалённом реестре DockerHub. Для этого вам нужно отправить образ с помощью следующей команды. Чтобы узнать больше о том, как отправить образ контейнера в репозиторий Docker, нажмите здесь.

docker push <Image name/Image ID> 

Сборка Docker образа

Команда docker build используется для создания образов Docker с помощью Dockerfile.

docker build -t image_name:tag .

Вместо имени_образа используйте имя образа, который вы создаете, и укажите номер_тега и . «точка» обозначает текущий каталог.

Остановка Docker контейнера

Вы можете останавливать и запускать контейнеры Docker, в которых выполняется обслуживание контейнеров. Чтобы останавливать и запускать конкретные контейнеры, вы можете использовать следующие команды.

docker stop container_name_or_id

Остановка нескольких Docker контейнеров

Вместо остановки одного контейнера вы можете остановить несколько контейнеров одновременно, используя следующие команды.

docker stop container1 container2 container3

Перезапуск Docker

При запуске контейнеров в Docker вы можете столкнуться с некоторыми ошибками, и контейнеры могут не запуститься. Вы можете перезапустить контейнеры, чтобы устранить ошибки, с помощью следующих команд.

docker restart container_name_or_id

Проверка Docker контейнера

Контейнеры Docker будут сталкиваться с некоторыми ошибками в режиме реального времени. Для отладки ошибок контейнера вы можете использовать следующие команды.

docker inspect container_name_or_id

Фиксация Docker

После запуска контейнеров с использованием текущего образа вы можете обновить контейнеры, взаимодействуя с ними. Команда позволяет создать образ на основе работающего Docker контейнера.

docker commit container_name_or_id new_image_name:tag

Базовая команды Docker

Ниже приведены некоторые из основных команд docker

  1. docker images: образы Docker перечисляют все образы, которые загружаются или создаются на этом хосте Docker.
  2. docker pull: Docker pull загрузит образы Docker с Dockerhub.
  3. docker run: Docker run запустит образ Docker в качестве контейнера.
  4. docker ps: Docker run выведет список всех контейнеров, запущенных на хосте Docker.
  5. docker stop: остановка Docker остановит уже запущенные контейнеры Docker.
  6. docker rm: команда Docker rm удалит контейнеры, которые находятся в состоянии остановки.

Команды работы с Docker образами

Ниже приведены команды Docker, которые используются для создания образа Docker, запуска контейнера Docker и подключения к нему томов Docker.

  1. docker build: Она создаст образы Docker с помощью Dockerfile.
  2. docker pull: Команда Docker pull загрузит образ Docker, доступный на DockerHub.
  3. docker images: Она выведет список всех образов, которые извлекаются и создаются на хосте Docker.
  4. docker inspect: Она поможет отладить образ Docker, если при создании или извлечении образа возникли какие-либо ошибки.
  5. docker push: команда Docker отправит образ Docker в Dockerhub.
  6. docker save: Она сохранит образ Docker в виде файла Dockerfile.
  7. docker rmi: Она удалит образ docker.

Команда управления контейнерами Docker

  1. docker attach: Подключение к существующему контейнеру.
  2. docker ps: Вывод списка запущенных контейнеров.
  3. docker container inspect infinite: Для просмотра Docker-контейнеров.
  4. docker exec: для выполнения команд в запущенных контейнерах.
  5. docker cp: для копирования файла с хоста docker в контейнеры docker,

Команды Docker Compose

Docker Compose работает поверх Docker и позволяет управлять множеством контейнеров в рамках одного проекта. Давайте рассмотрим основные команды (принципы работы большинства из них вам уже знакомы):

  • docker-compose up — запускает приложение со всеми контейнеры, информация о которых есть в docker-compose.yml. Если файл не указан, по умолчанию используется файл в текущем каталоге;
  • docker-compose down — останавливает и удаляет все контейнеры, а также тома, связанные с ними;
  • docker-compose start — запускает остановленные контейнеры;
  • docker-compose stop — останавливает работу запущенных контейнеров без их удаления;
  • docker-compose restart — перезапускает контейнеры;
  • docker-compose build — позволяет обновить образы или создать их заново, если они были изменены;
  • docker-compose logs — выводит журналы состояния;
  • docker-compose ps — отображает текущее состояние контейнеров;
  • docker-compose pull — загружает последние версии образов для сервисов, описанных в файле docker-compose.yml.

Шпаргалки по Docker командам

Нашел на просторах интернета несколько вариантов визуальных шпаргалок по командам Docker, выбирайте на свой вкус.

Перевод инструкции: Docker Commands

Основные команды Docker

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *