914 просмотров
От 12 октября 2023

Большая шпаргалка по всем командам Docker

1

Команды для работы с реестром

Вход в реестр: docker login docker login localhost:8080 Выход из реестра: docker logout docker logout localhost:8080 Поиск образа: docker search nginx docker search nginx -- filter stars=3 --no-trunc busybox Pull (выгрузка из реестра) образа: docker pull nginx docker pull eon01/nginx localhost:5000/myadmin/nginx Push (загрузка в реестр) образа: docker push eon01/nginx docker push eon01/nginx localhost:5000/myadmin/nginx

2

Команды для работы с контейнерами

Создание контейнера: docker create -t -i eon01/infinite --name infinite Первый запуск контейнера: docker run -it --name infinite -d eon01/infinite Запуск остановленного контейнера: docker start nginx Пауза контейнера: docker pause nginx Снятие паузы: docker unpause nginx Блокировка (до остановки контейнера): docker wait nginx Остановка контейнера: docker stop nginx Отправка SIGKILL (завершающего сигнала): docker kill nginx Перезагрузка контейнера: docker restart nginx Переименование контейнера: docker rename infinite infinity Удаление контейнера: docker rm infinite Обновление контейнера: docker update --cpu-shares 512 -m 300M infinite Подключение к существующему контейнеру: docker attach nginx

3

Команды для получения информации о контейнере

Вывод работающих контейнеров: docker ps docker ps -a Логи контейнера: docker logs infinite Информация о контейнере: docker inspect infinite docker inspect --format '{{ .NetworkSettings.IPAddress }}' $(docker ps -q) События контейнера: docker events infinite Публичные порты: docker port infinite Выполняющиеся процессы: docker top infinite Использование ресурсов: docker stats infinite Изменения файловой системы контейнера: docker diff infinite

4

Команды для работы с образами

Список образов: docker images Создание образов: docker build . docker build github.com/creack/docker-firefox docker build - < Dockerfile docker build - < context.tar.gz docker build -t eon/infinite . docker build -f myOtherDockerfile . curl example.com/remote/Dockerfile | docker build -f - . Удаление образа: docker rmi nginx Загрузка репозитория в tar (из файла или стандартного ввода): docker load < ubuntu.tar.gz docker load --input ubuntu.tar Сохранение образа в tar-архив: docker save busybox > ubuntu.tar Просмотр истории образа: docker history Создание образа из контейнера: docker commit nginx Тегирование образа: docker tag nginx eon01/nginx Push (загрузка в реестр) образа: docker push eon01/nginx

5

Команды для работы с сетью

Создание сети: 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 ls Получение информации о сети: docker network inspect MyOverlayNetwork Подключение работающего контейнера к сети: docker network connect MyOverlayNetwork nginx Подключение контейнера к сети при его запуске: docker run -it -d --network=MyOverlayNetwork nginx Отключение контейнера от сети: docker network disconnect MyOverlayNetwork nginx

6

Команды для очистки

Удаление работающего контейнера: docker rm nginx Удаление контейнера и его тома (volume): docker rm -v nginx Удаление всех контейнеров со статусом 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 rmi nginx Удаление неиспользуемых (dangling) образов: docker image prune docker rmi $(docker images -f dangling=true -q) Удаление неиспользуемых (dangling) образов даже с тегами: docker image prune -a Удаление всех образов: docker rmi $(docker images -a -q) Удаление всех образов без тегов: docker rmi -f $(docker images | grep "^<none>" | awk "{print $3}") Остановка и удаление всех контейнеров: docker stop $(docker ps -a -q) && docker rm $(docker ps -a -q) Удаление неиспользуемых (dangling) томов: docker volume prune docker volume rm $(docker volume ls -f dangling=true -q) Удаление неиспользуемых (dangling) томов по фильтру: docker volume prune --filter "label!=keep" Удаление неиспользуемых сетей: docker network prune Удаление всех неиспользуемых объектов: docker system prune По умолчанию для Docker 17.06.1+ тома не удаляются. Чтобы удалились и они тоже: docker system prune --volumes

7

Команды для работы с Docker Swarm

Инициализация Swarm: docker swarm init --advertise-addr 192.168.10.1 Подключение рабочего узла (worker) к Swarm: docker swarm join-token worker Подключение управляющего узла (manager) к Swarm: docker swarm join-token manager Список сервисов: docker service ls Список узлов: docker node ls Создание сервиса: docker service create --name vote -p 8080:80 instavote/vote Список заданий Swarm: docker service ps Масштабирование сервиса: docker service scale vote=3 Обновление сервиса: docker service update --image instavote/vote:movies vote docker service update --force --update-parallelism 1 --update-delay 30s nginx docker service update --update-parallelism 5--update-delay 2s --image instavote/vote:indent vote docker service update --limit-cpu 2 nginx docker service update --replicas=5 nginx

Хотите стать частью сообщества Девстанции?
Вступайте в наш чат в Telegram

Вам может быть интересно

Вопросник
  13 вопросов

Общие принципы и понятия ООП

Вопросы для собеседования по теме ООП

836 просмотров
От 7 октября 2023
Вопросник
  20 вопросов

Вопросы про Git на собеседовании

Топ вопросов, которые задают на собеседовании про Git

1261 просмотр
От 4 июня
Викторина
  10 вопросов

Викторина на базовое знание Git

Тест на знание базовых механик Git

239 просмотров
От 30 мая 2023
Вопросник
  11 вопросов

HTTP, SSL, WebSocket и прочее

Вопросы для собеседования бэкенд-разработчика

1028 просмотров
От 12 октября 2023
Вопросник
  28 вопросов

Паттерны проектирования с примерами

Раскрытие на примерах почти всех паттернов проектирования

970 просмотров
От 7 октября 2023
Вопросник
  12 вопросов

Операционные системы: базовые понятия

Потоки, процессы, конкурентность и прочие понятия из мира ОС

787 просмотров
От 27 января

Топ тредов

Gravatar for 1233freddypopa
freddypopa
: Добавить чекбокс, который отвечает за показ ранее тронутых задач (черновик)

Последнее сообщение:
Логотип Девстанции
Девстанция
: Отличная идея! Возьмём её на заметку!
1 сообщение
93 просмотра

Логотип Девстанции
Девстанция
: Предложите идею и получите спонсорский доступ на месяц

Последнее сообщение:
Gravatar for 1236borisops
Borisops
: Добавить темную тему) что бы можно было посмотреть сложность алгоритма и добавить тэги.
10 сообщений
321 просмотр

Gravatar for 815unicozz
unicozz
: Задача в JS под названием "Соревнование" содержит ошибку

Последнее сообщение:
Логотип Девстанции
Девстанция
: Привет! В примерах вызова функции действительно была опечатка, исправили. Однако, должен получиться...
2 сообщения
136 просмотров

Все категории