Докер: запустить

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

Вот список наиболее часто используемых команд, которые облегчат жизнь разработчикам.

# проверить версию докера

docker version

# просмотреть общесистемную информацию

docker info

# запустить контейнер (просто)

docker run <image name> 
// e.g. 
docker run hello-world

# запустить контейнер (простой++)

docker run <image name> <command>
// e.g. 
docker run busybox ls

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

docker ps

# список всех контейнеров (работающих и закрытых)

docker ps -a

# создать контейнер

docker create <image name>

# создать именованный контейнер

docker create --name <name> <container id>

# запускаем контейнер

docker start <image name>

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

docker stop <container id>
docker kill <container id>

# остановить все запущенные контейнеры

docker stop $(docker ps -a -q)

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

docker restart <container id>

# приостановка работающего контейнера

docker pause <container id>

# возобновление приостановленного контейнера

docker unpause <container id>

# удалить остановленные контейнеры

docker system prune

# удаление контейнера

docker rm <container id>

# удалить все существующие контейнеры

docker rm $(docker ps -a -q)

# переименовать контейнер

docker rename <container name> <new container name>

# получить логи

docker logs <container id>

# получить живые журналы

docker logs -f <container id>

# выполнить команду в работающем контейнере

docker exec -it <container id> <command>

# подключение к консоли контейнера

docker attach <container id>

# обновить конфигурацию контейнера

docker update <container id>

# ищем изменения в контейнере

docker diff <container id>

# экспортируем контейнер в tar-файл

docker export <container id> -o <tar file>

# импортируем контейнер из tar-файла

docker import <tar file>

# копирование содержимого между контейнером и файловой системой

docker cp <container id>:/<source> <destination>

# список событий в реальном времени

docker events <container id>

# показать сопоставление портов

docker port <container id>

# показать запущенные процессы

docker top <container id>

# получить статистику использования ресурсов контейнеров

docker stats

# получить статистику использования ресурсов контейнеров без прямой трансляции

docker stats --no-stream

# создать изображение

docker build .

# создать образ с другим Dockerfile

docker build -f <dockerfile>

# создать образ из контейнера

docker commit <container id> <image name>

# пометить изображение

docker build -t <docker id>/<project>:<tag> .

# вытащить образ докера

docker pull <image name>

# отправка изображения в dockerhub

// prerequisite 
docker login
docker image push <image name>

# список изображений

docker images

# удалить изображение

docker image remove <image name>

# удалить все существующие изображения

docker rmi $(docker images -q -a)

# поиск образов докеров

docker search <image name>

# сохранить образ докера в файл tar

docker save <image name> -o <tar file>
//or 
docker save <image name> > <tar file>

# загрузить образ Docker из файла tar

docker load -i <tar file>
// or
docker load < <tar file>

# отображать историю образа докера

docker history <image name>

# создаем том докера

docker volume create <volume name>

# удалить том докера

docker volume rm <volume name>

# проверить том докера

docker volume inspect <volume name>

# перечислить все тома докера

docker volume ls

# создание сети докеров

docker network create <network name>

# подключение контейнера к сети

docker network connect <network name> <container name>

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

docker network disconnect <network name> <container name>

# проверка сети

docker network inspect <network name>

# список всех сетей докеров

docker network ls

# удалить сеть докеров

docker network rm <network name>

# удалить все неиспользуемые сети докеров

docker network prune