Мой новый сайт!

Imp

Шпаргалка

Запуск docker демона (при необходимости):
  sudo service docker start

Присоединить не суперпользователя к управлению докером:
  sudo usermod -aG docker your-user

Параметры docker:
  -v /tmp:/root  - Подмотировать при создании папку /tmp в папку /root
  --name habrahabr - указать имя создаваемого контейнера (в данном случае habrahabr)
  -d  - опция "демонизации" контейнера (работает постоянно)
  -i  - оставить stdin открытым даже если не выполнено подключение (attach) к контейнеру (при запуске с ключём -d)
  -t  - при запуске приложения в контейнере ему необходимо выделить псевдо-терминал.
  -p  - <порт машины>:<порт в контейнере> - проброс портов в контейнер.

Поиск готового образа (ищем ubuntu):
  sudo docker search ubuntu

Скачиваем образ на наш сервер:
  sudo docker pull ubuntu

Получить список локальных образов:
  sudo docker images

Удалить образ:
  sudo docker rmi <id образа>

Удалить все образы:
  docker rmi $(docker images -q)

Создать контейнер из образа без запуска:
  sudo docker create [<Ключи запуска>] <Имя образа> <Команда>

Создать контейнер и запустить его:
  sudo docker run [<Ключи запуска>] <Имя образа> <Команда>

Получить информацию о настройках контейнера:
   sudo docker inspect <Имя контейнера или Id>

Удалить контейнер:
  sudo docker rm <имя контейнера или id>

Удалить все контейнеры:
  docker rm $(docker ps -a -q)

Получить список всех контейнеров:
  sudo docker ps -a

Получить список запущенных контейнеров:
  sudo docker ps

Запуск контейнера (stupefied_lovelace):
  sudo docker start <имя контейнера или id>

Остановка контейнера (нужна только для контейнеров-демонов):
  docker stop <имя контейнера>

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

Выполнить комманду в контейнере:
  sudo docker exec <Имя контейнера или Id> <Команда>

Для подключения к контейнеру необходимо использовать команду attach:
  sudo docker attach stupefied_lovelace
(может понадобиться нажатие Enter до появления приглашения).

Создать образ на основе контейнера:
  sudo docker commit <Имя контейнера или Id> <Имя создаваемого образа>

Скопировать данные в контейнер или вынуть из него:
  docker cp <путь к данным на хосте> <имя контейнера>:<путь>
  docker cp <имя контейнера>:<путь> <путь к данным на хосте>

Создать образ на основе контейнера:
  sudo docker commit <Имя контейнера или Id> <Имя создаваемого образа>

Создать образ на основе контейнера, при этом собрав все слои в один:
  sudo docker export <Имя контейнера или Id> | docker import - <Имя создаваемого образа>