training-web.ruГлавнаяКатегорииО насКарта сайтаПоискТёмная тема

Категории

Шпаргалка по основным командам докера Docker

Создано: 26 мая 2019Автор: Егор Астапов957 просмотровСложность: легкий

Это небольшая шпаргалка по командам для докера. Тут собраны основные команды.

images (образы) - Схемы нашего приложения, которые являются основой контейнеров. В примере выше мы использовали команду docker pull чтобы скачать образ busybox.

Containers (контейнеры) - Создаются на основе образа и запускают само приложение. Мы создали контейнер командой docker run, и использовали образ busybox, скачанный ранее. Список запущенных контейнеров можно увидеть с помощью команды docker ps.

Docker Daemon (демон Докера) - Фоновый сервис, запущенный на хост-машине, который отвечает за создание, запуск и уничтожение Докер-контейнеров. Демон — это процесс, который запущен на операционной системе, с которой взаимодействует клиент.

Docker Client (клиент Докера) - Утилита командной строки, которая позволяет пользователю взаимодействовать с демоном. Существуют другие формы клиента, например, Kitematic, с графическим интерфейсом.

Docker Hub - Регистр Докер-образов. Грубо говоря, архив всех доступных образов. Если нужно, то можно содержать собственный регистр и использовать его для получения образов.

Base images (базовые образы) — это образы, которые не имеют родительского образа. Обычно это образы с операционной системой, такие как ubuntu, busybox или debian.

Child images (дочерние образы) — это образы, построенные на базовых образах и обладающие дополнительной функциональностью.

# показать список образов в системе
docker images

# запустим Докер-контейнер busybox
docker run busybox

# помощь по команде
docker run --help

# Команда run с флагом -it подключает интерактивный tty в контейнер
# Теперь можно запускать сколько угодно много команд внутри
docker run -it busybox sh

# выводит на экран список всех запущенных контейнеров.
docker ps

# виден список всех контейнеров, которые мы запускали
docker ps -a

# скопируйте ID (можно несколько) из вывода выше и
# передайте параметрами в команду
docker rm 305297d7a235

# закрытые докеры
docker ps -a -q -f status=exited

# удаляет все контейнеры, у которых статус exited.
# Флаг -q возвращает только численные ID,
# а флаг -f фильтрует вывод на основе предоставленных условий
docker rm $(docker ps -a -q -f status=exited)

# также можно удалять ненужные образы командой
docker rmi

# скачать образ напрямую + установка
docker run prakhar1989/static-site
docker run prakhar1989/flask-app

# флаг -d открепит (detach) терминал, флаг -P сделает все открытые
# порты публичными и случайными, и, наконец,
# флаг --name это имя, которое мы хотим дать контейнеру
docker run -d -P --name static-site prakhar1989/static-site
docker run -d -P --name flask-app prakhar1989/flask-app

# увидеть порты
docker port static-site

# обозначить свой порт. Клиент будет перенаправлять соединения на него
docker run -p 8888:80 prakhar1989/static-site

# остановить контейнер
docker stop id

# остановить все контейнеры
docker stop $(docker ps -q)

# искать образ. происходит поиск по всему dockerhub
docker search prakhar1989

# Команда docker build занимается сложной задачей
# создания образа на основе Dockerfile.
# Команда принимает опциональный тег с флагом -t и
# путь до директории, в которой лежит Dockerfile
docker build -t prakhar1989/catnip.

# должен возникнуть новый образ
docker images

# авторизация на dockerhub
docker login

# опубликовать наш образ в регистре
docker push prakhar1989/catnip

# показывает все сети
docker network ls

# сеть, в которой контейнеры запущены по умолчанию
docker network inspect bridge

# создадим свою сеть foodtrucks
docker network create foodtrucks

# удалим сеть foodtrucks
docker network rm foodtrucks

# посмотреть запущенные процессы в контейнере
docker top 55966b4fcb9b

# возвращает JSON документ содержащий конфигурацию и другую полезную информацию
docker inspect name_image

# поиск образов
docker search django # скачивание образа
docker pull [ОПЦИИ] [ПУТЬ/]ИМЯ_ОБРАЗА[:ТЕГ]
docker pull centos

# выгрузить (push) репозиторий в реестр соответствующий его имени и тегу
docker push yourname/newimage

# установить Docker Compose
pip install docker-compose

# версия
docker-compose version

# запуск докера из папки, флаг -d открепит (detach) терминал
docker-compose up

# остановим запущенные сервисы
docker-compose stop

Комментарии

реклама