English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Docker позволяет вам запускать приложения в контейнере, используя docker run Команда для запуска приложения в контейнере.
Вывод Hello world
w3codebox@w3codebox:~$ docker run ubuntu:15.10 /bin/echo "Hello world" Hello world
Интерпретация параметров:
docker: Бинарный файл выполнения Docker.
run: В сочетании с docker для запуска контейнера.
ubuntu:15.10 Указать образ, который нужно запустить, Docker сначала проверяет, существует ли образ на локальном хосте, если образ не существует, Docker скачивает общедоступный образ из хранилища образов Docker Hub.
/bin/echo "Hello world": Команда, выполняемая в запущенном контейнере
Полный смысл команды: Docker создает новый контейнер с образом ubuntu15.10, затем выполняет в контейнере bin/echo "Hello world" и выводит результат.
Мы используем два параметра docker -i -t, чтобы контейнер, запущенный docker, мог реализовать"Диалог"Свойства:
w3codebox@w3codebox:~$ docker run -i -t ubuntu:15.10 /bin/bash root@0123ce188bd8:/#
Интерпретация параметров:
-t: В новом контейнере определить виртуальный терминал или терминал.
-i: Разрешает вам взаимодействовать с стандартным вводом (STDIN) контейнера.
Внимание, вторая строка root@0123ce188bd8:/#, в этот момент мы уже вошли в контейнер системы ubuntu15.10
Мы пытаемся запустить команду в контейнере cat /proc/versionиlsПросмотр информации о версии текущей системы и списка файлов в текущей директории
root@0123ce188bd8:/# cat /proc/version Linux версия 4.4.0-151-generic (собран buildd@lgw01-amd64-043) (gcc версия 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.10)) #178-Ubuntu SMP Вт Jun 11 08:30:22 UTC 2019 root@0123ce188bd8:/# ls bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var root@0123ce188bd8:/#
Мы можем выйти из контейнера, запустив команду exit или используя CTRL+D.
root@0123ce188bd8:/# exit exit root@w3codebox:~#
Обратите внимание, что строка root@w3codebox:~# на третьем ряду означает, что мы вышли из текущего контейнера и вернулись к текущему хосту.
Используйте следующую команду для создания контейнера, работающего в режиме процесса
w3codebox@w3codebox:~$ docker run -d ubuntu:15.10 /bin/sh -c "while true; do echo hello world; sleep 1; done" 2b1b7a428627c51ab8810d541d759f072b4fc75487eed05812646b8534a2fe63
В выводе мы не видим ожидаемый "hello world", а длинную строку символов
2b1b7a428627c51ab8810d541d759f072b4fc75487eed05812646b8534a2fe63
Эта длинная строка叫做 ID контейнера, для каждого контейнера уникальна, и мы можем проверить, что с контейнером происходит, используя ID контейнера.
сначала, нам нужно подтвердить, что контейнер работает, можно через docker ps чтобы проверить:
w3codebox@w3codebox:~$ docker ps CONTAINER ID IMAGE COMMAND ... 5917eac21c36 ubuntu:15.10 "/bin/sh -c 'while t…" ...
подробное описание вывода:
CONTAINER ID: ID контейнера.
IMAGE: используемое изображение.
COMMAND: команда, запущенная контейнером при запуске.
CREATED: время создания контейнера.
STATUS: состояние контейнера.
состояний 7 видов:
создан
restarting (перезапускается)
running или Up (работает)
removing (переносится)
paused (приостановлен)
exited (остановлен)
dead (мёртв)
PORTS: Информация о портах контейнера и используемых типах соединений (tcp\udp).
NAMES: Имя контейнера, автоматически назначенное.
Использование команды docker logs на хосте для просмотра стандартного вывода контейнера:
w3codebox@w3codebox:~$ docker logs 2b1b7a428627
w3codebox@w3codebox:~$ docker logs amazing_cori
Мы используем docker stop Команда для остановки контейнера:
docker stop 2b1b7a428627
Просмотр с помощью docker ps показывает, что контейнер уже остановлен:
w3codebox@w3codebox:~$ docker ps
Теперь контейнер больше не существует.
También puedes usar la siguiente orden para detener:
w3codebox@w3codebox:~$ docker stop amazing_cori