Рубрика:
Администрирование /
Виртуализация
|
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|
АНДРЕЙ МАРКЕЛОВ, RHCA, старший менеджер архитектурных решений компании Ericsson, автор книг об облачных технологиях, andrey.markelov@ericsson.com
Работа с контейнерами Docker Часть 2. Базовые операции с контейнерам
Рассмотрим, как управлять состоянием контейнеров, как организовать сетевое взаимодействие и подключать внешние дисковые тома. Основы работы с контейнерами были изучены в предыдущей статье [1]
Управление состоянием контейнеров
Начнем с подробного разбора того, в каких состояниях может находиться уже созданный контейнер Docker. Для этого воспользуемся командой docker ps:
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d3d4c9281249 mysql "docker-entrypoint.sh" 31 minutes ago Up 31 minutes 3306/tcp mysql-test
Контейнеры могут находиться в нескольких состояниях. Опция --filter позволяет управлять выводом команды ps, фильтруя вывод списка контейнеров по их состоянию. В качестве значения опции можно передавать created, restarting, running, paused и exited. С ключом -a мы можем увидеть список всех контейнеров.
Перечислим основные состояния контейнеров.
- Исполняется (running) – контейнер работает. В выводе docker ps увидите статус «Up» и время, в течение которого он исполняется.
- Создан (created) – контейнер создан, но в настоящий момент не выполняется. Такое состояние будет у контейнера после команды docker create. Еще один пример, когда контейнер оказывается в этом состоянии:
$ docker run --name test alpine bash
exec: "bash": executable file not found in $PATH
docker: Error response from daemon: Container command not found or does not exist..
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
afee6a8fb5cb alpine "bash" 13 seconds ago Created test
Что тут произошло? Пользователь попытался создать контейнер test из образа Alpine Linux [2] и хотел в качестве запущенной команды получить командный интерпретатор bash. Данной команды в образе нет, соответственно, контейнер до запуска не дошел.
Статью целиком читайте в журнале «Системный администратор», №3 за 2017 г. на страницах 16-21.
PDF-версию данного номера можно приобрести в нашем магазине.
- Маркелов А. Работа с контейнерами Docker. Часть 1. Основы. // «Системный администратор», №1-2, 2017 г. – С. 36-40 (http://samag.ru/archive/article/3358).
- Официальная страница дистрибутива Alpine Linux – https://alpinelinux.org.
- Схема, описывающая состояния контейнеров в официальной документации Docker – https://docs.docker.com/engine/reference/api/docker_remote_api.
- Официальная страница контейнера Apache – https://hub.docker.com/_/httpd.
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|