Команда docker compose run
Команда docker compose run используется для запуска нового контейнера и выполнения конкретного сервиса без запуска всех сервисов, определённых во всём файле Compose.
Команда docker compose run позволяет выполнять задачи для одного сервиса, например запускать одноразовые команды или отлаживать.
Отличие от docker compose up состоит в том, что команда run запускает только указанный сервис и не запускает другие сервисы, которые от него зависят.
Синтаксис
docker compose run [OPTIONS] SERVICE [COMMAND] [ARGS...]
- SERVICE:Имя сервиса, определённое в файле Compose.
- COMMANDиARGSНеобязательный параметр, указывающий команду и её аргументы для выполнения внутри контейнера.
ОПЦИИ:
--rm:Автоматически удалять контейнер после выполнения.-d:Запустить контейнер в отсоединённом режиме.-T:Отключить псевдо-TTY.
Пример
1. Команда для запуска конкретного сервиса
docker compose run web python manage.py migrate
Эта команда выполнит команду `python manage.py migrate` в контейнере сервиса `web`, не запуская другие сервисы.
2. Автоматически удалить контейнер
docker compose run --rm web bash
Эта команда запустит сервис web и откроет терминал Bash, а после завершения задачи удалит контейнер.
docker compose run отлично подходит для выполнения одноразовых задач в сервисе, не влияя на работу других сервисов.
Другие расширения