1. Обзор
Docker предоставляет полезный интерфейс командной строки для взаимодействия с контейнером. `
В этом урокемы увидим команды
запуска и
запуска` и подчеркнем, чем они отличаются, а также рассмотрим несколько практических примеров.
2. Запустите контейнер
Команда запуска
Docker представляет собой комбинацию команд создания
и запуска
. Он создает контейнер поверх своего конкретного образа и затем запускает его . Например, давайте запустим контейнер Postgres :
docker run --name postgres_example -p 5432:5432 -v /volume:/var/lib/postgresql/data -e POSTGRES_PASSWORD=my_password -d postgres
Давайте посмотрим на наши запущенные контейнеры с помощью docker ps
:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
52b7c79bfaa8 postgres "docker-entrypoint.s…" 22 seconds ago Up 20 seconds 0.0.0.0:5432->5432/tcp, :::5432->5432/tcp postgres_example
Если мы используем журналы докеров
, мы также можем получить дополнительную информацию о запущенном контейнере, например:
starting PostgreSQL 13.2
listening on IPv4 address "0.0.0.0", port 5432
listening on IPv6 address "::", port 5432
listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
database system is ready to accept connections
3. Запустите контейнер
Команда запуска Docker запускает
остановленный контейнер . Контейнер может останавливаться по разным причинам — например, когда он израсходовал слишком много памяти и был уничтожен операционной системой хоста.
Чтобы продемонстрировать это, давайте вручную остановим контейнер, который мы создали ранее:
docker stop 52b7c79bfaa8
В этом случае в списке запущенных контейнеров будет показан запущенный контейнер:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
52b7c79bfaa8 postgres "docker-entrypoint.s…" 2 minutes ago Exited (0) 2 seconds ago 0.0.0.0:5432->5432/tcp, :::5432->5432/tcp postgres_example
Давайте посмотрим также на журналы:
received fast shutdown request
aborting any active transactions
shutting down
database system is shut down
Если контейнер не работает, мы можем запустить его снова, используя docker start
:
docker start 52b7c79bfaa8
Если при запуске контейнера не возникнет ошибок, мы вернемся к статусу работающего контейнера. Docker также предоставляет команду перезапуска docker
, которая объединяет остановку
и запуск
в одну команду.
4. Вывод
В этом руководстве мы кратко обсудили команды запуска
и запуска
в Docker.
Мы видели пример запуска контейнера с помощью docker run
. Если контейнер останавливается, мы можем снова запустить его с помощью docker start
.