🐝 Как запустить Docker контейнер в фоновом режиме (Detached Mode)

by itisgood

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

Но с помощью команды docker run [OPTIONS] вы можете добавить или переопределить значения по умолчанию для образа, установленные разработчиком, что даст вам больше контроля над тем, как работает контейнер.

В этой статье мы кратко объясним режим переднего плана и фоновый режим запуска контейнера, а также покажем, как запустить контейнер Docker в фоновом режиме в Detached Mode.

Сравнение режима переднего плана (по умолчанию) фонового /Detached Mode.

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

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

Существуют также параметры командной строки для его настройки, такие как -t для выделения псевдо-tty процессу и -i для сохранения STDIN открытым, даже если он не подключен.

Вы также можете прикрепить его к одному или нескольким файловым дескрипторам (STDIN, STDOUT и / или STDERR), используя флаг -a = [значение].

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

В этом примере показано, как запустить контейнер Docker в режиме переднего плана:

# docker run --rm -ti -p 8000:80 -p 8443:443 --name pandorafms pandorafms/pandorafms:latest

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

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

Чтобы запустить контейнер Docker в фоновом режиме, используйте параметр -d = true или просто -d.

Сначала остановите его в режиме переднего плана, нажав [Ctrl + C], затем запустите его в отдельном режиме, как показано ниже:

# docker run -d --rm -p 8000:80 -p 8443:443 --name pandorafms pandorafms/pandorafms:latest

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

# docker ps -a

Кроме того, для повторного подключения к отдельному контейнеру используйте команду docker attach.

# docker attach --name pandorafms
или
# docker attach 301aef99c1f3

Если вы хотите остановить вышеуказанный контейнер или любой другой работающий контейнер, используйте следующую команду (замените 301aef99c1f3 фактическим идентификатором контейнера).

# docker stop 301aef99c1f3

Вы также можете прочитать следующие статьи о Docker.

 

You may also like

Leave a Comment