Команда Docker exec

Справочник команд Docker


docker execКоманда используется для выполнения новой команды внутри работающего контейнера. Это полезно для отладки, запуска дополнительных процессов или выполнения управляющих операций внутри контейнера.

Синтаксис

docker exec [OPTIONS] CONTAINER COMMAND [ARG...]

Общие параметры

  • -d, --detachЗапустить команду в фоновом режиме.
  • --detach-keys: Переопределить последовательность клавиш для отсоединения от контейнера.
  • -e, --env: Задайте переменные окружения.
  • --env-file: Читать переменные окружения из файла.
  • -i, --interactive: Оставлять стандартный ввод открытым.
  • --privileged: Предоставить дополнительные привилегии этой команде.
  • --user, -uЗапустить команду от имени указанного пользователя.
  • --workdir, -wУказать рабочий каталог для команды.
  • -t, --tty: Выделить псевдо-TTY.

Пример

Запустить команду внутри контейнера:

docker exec my_container ls /app

Выполнить команду ls /app внутри работающего контейнера my_container, чтобы вывести содержимое каталога /app.

Запустить команду в интерактивном режиме:

docker exec -it my_container /bin/bash

Запустить интерактивную оболочку Bash внутри работающего контейнера my_container. -i оставляет стандартный ввод открытым, а -t выделяет псевдо-TTY.

Запустить команду в фоновом режиме:

docker exec -d my_container touch /app/newfile.txt

Запустите команду touch /app/newfile.txt в фоновом режиме внутри работающего контейнера my_container, чтобы создать новый файл.

Задайте переменные окружения:

docker exec -e MY_ENV_VAR=my_value my_container env

Выполните команду env внутри работающего контейнера my_container, установив переменную окружения MY_ENV_VAR в значение my_value.

Выполните команду от имени указанного пользователя:

docker exec -u user123 my_container whoami

Выполните команду whoami от имени пользователя user123 внутри работающего контейнера my_container.

Укажите рабочий каталог:

docker exec -w /app my_container pwd

Выполните команду pwd с рабочим каталогом /app внутри работающего контейнера my_container.

Сценарий использования

  • Отладка контейнераВойдите в контейнер для отладки и устранения неполадок.
  • Задачи управления: Выполняйте дополнительные административные задачи или операции обслуживания внутри контейнера.
  • Мониторинг и проверка: Выполняйте команды мониторинга и проверки внутри контейнера, чтобы получать состояние работы и логи.

Итог

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


Справочник команд Docker

Другие расширения