Linux запущенные контейнеры docker

Содержание
  1. Docker посмотреть запущенные контейнеры, запустить или остановить контейнеры
  2. Список запущенных Docker контейнеров
  3. Как запустить Docker контейнер
  4. Список контейнеров Docker
  5. Синтаксис команды docker ps
  6. Запущенные контейнеры Docker
  7. Выводы
  8. Шпаргалка по Docker
  9. Удаление образа
  10. Загрузка репозитория в tar (из файла или стандартного ввода)
  11. Сохранение образа в tar-архив
  12. Просмотр истории образа
  13. Создание образа из контейнера
  14. Тегирование образа
  15. Push (загрузка в реестр) образа
  16. РАБОТА С ТОМАМИ
  17. Немного теории:
  18. Создание тома
  19. Монтируем с хоста в контейнер
  20. Монтируем с контейнера на хост
  21. Посмотреть настройки тома
  22. Вывести список всех томов с их названиями.
  23. Удаление volumes по названию
  24. СЕТИ
  25. Создание сети
  26. Удаление сети
  27. Список сетей
  28. Получение информации о сети
  29. Подключение работающего контейнера к сети
  30. Подключение контейнера к сети при его запуске
  31. Отключение контейнера от сети
  32. ЧИСТКА МУСОРА
  33. Показать образы и контейнеры
  34. Удаление образов (images)
  35. Удаление контейнеров (containers)
  36. Удаление томов (volumes)
  37. Удаление сетей (networks)
  38. Удаление всех неиспользуемых объектов

Docker посмотреть запущенные контейнеры, запустить или остановить контейнеры

Docker посмотреть запущенные контейнеры, запустить или остановить контейнеры

Docker — это популярный инструмент виртуализации, который копирует конкретную операционную среду поверх основной ОС. Каждая среда называется контейнером. Управление контейнерами необходимо для работы в Docker.

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

Список запущенных Docker контейнеров

Чтобы вывести список всех запущенных контейнеров Docker, введите в окне терминала следующее:

Список запущенных Docker контейнеров

Как вы можете видеть, изображение выше указывает на отсутствие запущенных контейнеров.

Чтобы вывести список всех работающих и остановленных контейнеров, добавьте параметр –a :

Список запущенных Docker контейнеров

Для вывода списка контейнеров по их идентификатору используйте параметр –aq :

Список запущенных Docker контейнеров

Чтобы просмотреть общий размер файла каждого контейнера, используйте параметр –s :

Чтобы просмотреть список последних созданных контейнеров, используйте параметр –l :

Список запущенных Docker контейнеров

Команда ps предоставляет несколько столбцов информации:

  • Container ID — Уникальный буквенно-цифровой номер для каждого контейнера
  • Image — Образ базовой операционной системы, на котором основан контейнер
  • Command — команда, запустившая контейнер
  • Created — Как давно был создан контейнер
  • Status — Время работы или простои
  • Ports — Указывает любые порты, перенаправляемые в контейнер для работы в сети.
  • Name — Памятное имя, присвоенное программным обеспечением Docker

Как запустить Docker контейнер

Основная команда для запуска одного или нескольких остановленных контейнеров Docker docker start :

docker start [options] container_id

Как запустить Docker контейнер

Вы можете указать контейнер, используя его имя или идентификатор (длинный или короткий).

Читайте также:  Mini m8s ii linux

Чтобы создать новый контейнер из образа и запустить его, используйте docker run :

docker run [options] image [command] [argument]

Если вы не определите имя для вновь созданного контейнера, он создаст случайное имя строки. Чтобы определить имя контейнера, используйте параметр ––name :

Источник

Список контейнеров Docker

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

Для просмотра списка контейнеров используется команда docker ps. Она позволяет смотреть как запущенные контейнеры Docker, так и все контейнеры, которые есть в системе.

Синтаксис команды docker ps

В синтаксисе команды вообще нет ничего сложного:

$ docker ps опции

  • —all , -a — вывести все контейнеры, и запущенные и не запущенные;
  • —filter , -f — фильтровать контейнеры при выводе;
  • —format — более красивый вывод списка контейнеров;
  • —last , -n — показать только N последних созданных контейнеров;
  • —latest , -l — вывести только последний контейнер;
  • —no-trunc — не обрезать вывод программы;
  • —quiet , -q — отображать только цифровые идентификаторы контейнеров;
  • —size , -s — отображать размер контейнера.

А теперь разберёмся более подробно, как посмотреть контейнеры Docker.

Запущенные контейнеры Docker

По умолчанию docker ps выводит только запущенные контейнеры и при этом обрезает слишком длинные поля:

Чтобы вывести контейнеры, не обрезая информацию, используйте параметр —no-trunc:

Для того чтобы посмотреть не только запущенные контейнеры, а все, используйте опцию -a:

Вы можете фильтровать контейнеры по имени, например, вывести только те, в имени которых содержится Ubuntu1804:

docker ps —filter name=Ubuntu1804

Есть и другие фильтры, но я не буду здесь их описывать, если они вам нужны, посмотрите официальную документацию. Для того чтобы вывести в список контейнеров Docker дополнительно размер контейнера, используйте опцию -s:

Команда показывает два размера. Первый из них — это объём, занимаемый записываемой частью контейнера. Второй размер -виртуальный, это общее пространство, занимаемое и записываемой частью контейнера, и доступными только для чтения данными образа.

Опция -l может использоваться для просмотра только последнего созданного образа. Это может быть полезно, например, чтобы узнать его идентификатор:

Если вас интересует, где хранятся контейнеры docker , то тут вам поможет команда docker inspect. Она позволяет смотреть подробную информацию про контейнер. У контейнера есть несколько папок для различных целей, давайте посмотрим MergedDir:

Читайте также:  How to connect via ssh linux

С тем же успехом вы можете смотреть LogPath или другие директории контейреа.

Выводы

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

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

Шпаргалка по Docker

(файл опциями сборки образа), учитывая что мы находимся в папке где лежит этот файл. Через ключ -t назначаем имя нашему образу. Точка в конце означает что Dockerfile лежит в текущей директории.

docker build github.com/creack/docker-firefox
docker build -t eon/infinite .
docker build -f myOtherDockerfile .
curl example.com/remote/Dockerfile | docker build -f - .

Удаление образа

Загрузка репозитория в tar (из файла или стандартного ввода)

docker load --input ubuntu.tar

Сохранение образа в tar-архив

docker save busybox > ubuntu.tar

Просмотр истории образа

Создание образа из контейнера

Тегирование образа

docker tag nginx eon01/nginx

Push (загрузка в реестр) образа

РАБОТА С ТОМАМИ

Немного теории:

  • Если монтируем пустой том с хоста, а в контейнере уже есть файлы, то они скопируются в том
  • Если монтируем с хоста том с файлами, то они окажутся в контейнере
  • Если мы монтируем не пустой том с хоста, а в контейнере по этому пути уже есть файлы, то они будут скрыты
  • Можно монтировать с хоста любые файлы. В том числе и служебные. Например сокет docker. Что бы получился docker-in-docker (dind)

Создание тома

Монтируем с хоста в контейнер

docker run --mount source=,target=/path/to/folder/in/container -d

Монтируем с контейнера на хост

docker run --mount type=bind,source=/host/folder,target=/container/folder -d

Посмотреть настройки тома

Вывести список всех томов с их названиями.

Удаление volumes по названию

СЕТИ

Создание сети

docker network create -d overlay MyOverlayNetwork
docker network create -d bridge MyBridgeNetwork
docker network create -d overlay \ --subnet=192.168.0.0/16 \ --subnet=192.170.0.0/16 \ --gateway=192.168.0.100 \ --gateway=192.170.0.100 \ --ip-range=192.168.1.0/24 \ --aux-address="my-router=192.168.1.5" --aux-address="my-switch=192.168.1.6" \ --aux-address="my-printer=192.170.1.5" --aux-address="my-nas=192.170.1.6" \ MyOverlayNetwork

Удаление сети

docker network rm MyOverlayNetwork

Список сетей

Получение информации о сети

docker network inspect MyOverlayNetwork

Подключение работающего контейнера к сети

docker network connect MyOverlayNetwork nginx

Подключение контейнера к сети при его запуске

docker run -it -d --network=MyOverlayNetwork nginx

Отключение контейнера от сети

docker network disconnect MyOverlayNetwork nginx

ЧИСТКА МУСОРА

Показать образы и контейнеры

# Вывести все образы (images) docker images -a # Вывести все неиспользуемые образы docker images -f dangling=true # Выведет список запущенных контейнеров, если добавить ключ -a, выведет список всех контейнеров. docker ps 

Удаление образов (images)

# Для удаления используется команда docker rmi с добавлением ИД или тега, например: # с ключом --force удалит контейнер и образ docker rmi abb461727af5 # Удаление всех образов docker rmi $(docker images -a -q) # Удаление всех неиспользуемых образов docker images prune docker rmi $(docker images -f dangling=true -q) # Удаление всех неиспользуемых (не связанных с контейнерами) образов: # Если добавить к команде ключ -a, то произойдет удаление всех остановленных контейнеров и неиспользуемых образов. docker system prune # Удаление всех образов без тегов docker rmi -f $(docker images | grep "^" | awk "") # Удаление всех образов docker rmi $(docker images -a -q) 

Удаление контейнеров (containers)

# Для удаления контейнера, его необходимо сначала остановить командой ниже с указанием ID или названия контейнера. docker stop CONTAINER_ID # Для удаления контейнера используется команда docker rm с добавлением ИД или названия docker rm CONTAINER_ID # Удаление контейнера и его тома (volume) docker rm -v CONTAINER_ID # Удаление всех контейнеров со статусом exited docker rm $(docker ps -a -f status=exited -q) # Удаление всех остановленных контейнеров docker container prune docker rm `docker ps -a -q` # Удаление контейнеров, остановленных более суток назад docker container prune --filter "until=24h" # Остановка и удаление всех контейнеров docker stop $(docker ps -a -q) && docker rm $(docker ps -a -q)

Удаление томов (volumes)

#Вывести список всех томов с их названиями. docker volume ls # Удаление volumes по названию docker rm # Вывести список всех томов не связанных с контейнерами docker volume ls -f dangling=true # Удаление томов (volumes) несвязанных с контейнерами docker volume prune docker volume rm $(docker volume ls -f dangling=true -q) # Удаление неиспользуемых (dangling) томов по фильтру docker volume prune --filter "label!=keep"

Удаление сетей (networks)

# Вывести список всех сетей с их ИД и названиями. docker network ls # Для удаления используется команда с добавлением ИД или названия: docker network rm NETWORK_ID # Удалит все сети не используемые хотя бы одним контейнером. docker network prune

Удаление всех неиспользуемых объектов

docker system prune # По умолчанию для Docker 17.06.1+ тома не удаляются. Чтобы удалились и они тоже: docker system prune --volumes

Источник

Оцените статью
Adblock
detector