Это руководство объясняет основы начала работы с Docker. Я предполагаю, что у вас уже установлен Docker. Шаги в этом руководстве будут работать с любым дистрибутивом Linux, совместимым с Docker (CentOS, Ubuntu и т. Д.).
Создание вашего первого контейнера Docker
Docker создает виртуальные контейнеры. Контейнерная система Docker очень эффективна, потому что она работает с коммитами. Это экономит место и позволяет видеть изменения в контейнере. Например, если вы устанавливаете Apache в контейнер, вы можете создать коммит с именем «Installed Apache», чтобы точно знать, что произошло.
Первое, что мы сделаем, это вытащим из хранилища. Скажем, что вы хотите установить Ubuntu в контейнер, вы можете извлечь Ubuntu из репозитория:
docker pull ubuntu
Будьте терпеливы, так как это может занять некоторое время. После того, как все было загружено, вы можете создать контейнер с этой ОС:
docker run -i -t ubuntu /bin/bash
Или с Debian, например:
docker run -i -t debian /bin/bash
Если он не может найти ОС (еще не вытащенную), он автоматически извлечет ее из Docker Hub.
По сути, теперь у вас есть контейнер! Вы запускаете bash в уменьшенном контейнере, которым управляет Docker. Попробуйте запустить некоторые распространенные команды Linux, чтобы почувствовать окружающую среду.
Когда вы печатаете, exitчтобы выйти из контейнера и вернуться в свою основную ОС, все ваши изменения исчезнут. Чтобы сохранить изменения в контейнере, мы используем commit.
Фиксации
Когда вы создаете Docker-контейнер, его имя хоста генерируется автоматически. Например, когда я создаю новый контейнер Ubuntu, я могу получить имя хоста f7943e42aff0. Это имя, которое Docker дал вашему контейнеру.
Установите на него то, что вы хотите, и убедитесь, что все работает. Затем выйдите из контейнера Docker:
exit
Теперь нам нужно совершить; в противном случае все ваши изменения будут потеряны.
docker commit -a "William E." -m "Installed Apache" f7943e42aff0 apachesnapshot
-aПереключатель может быть использован , чтобы правильно определить , кто является автором этой фиксации (кто сделал изменения в контейнере). -mэто сообщение коммита. Это f7943e42aff0имя хоста моего контейнера. В вашем случае это будет отличаться, так как Docker генерирует их случайным образом. apachesnapshotэто имя вашего изображения.
Вы можете просмотреть список со всеми изображениями на вашем локальном компьютере. Самые новые находятся на вершине.
docker images
Чтобы запустить ваш Docker-контейнер с изменениями, запустите:
docker run -t -i apachesnapshot /bin/bash
Использование Dockerfiles
Dockerfiles можно использовать для создания образов с уже установленными приложениями. Это делает удобным запуск контейнера без необходимости выполнения определенной команды. Например, если мы хотим создать изображение с ~/file.txtуже созданным файлом , мы будем использовать следующий Dockerfile:
FROM ubuntu:14.04
MAINTAINER William E. <william@localhost>
RUN touch ~/file.txt
Чтобы создать Docker-контейнер с этим Dockerfile, создайте папку для вашего Dockerfile на локальном компьютере (я использовал ~/files). Поместите содержимое вашего Dockerfile в файл с именем Dockerfile. Теперь вы можете создать изображение с помощью:
docker build -t="test" .
Это создает образ Docker из вашего скрипта Dockerfile. Теперь вы можете запустить свой контейнер. testто же значение, что и testв docker buildкоманде.
docker run -t -i test /bin/bash
Когда откроется оболочка bash, вы увидите, что ~/file.txtона уже создана.
Это просто вкус мощных сред, которые вы можете создать с помощью Docker. Официальное руководство Docker углубляется в эти темы. На этом этапе вы сможете поэкспериментировать с запуском существующих контейнеров и начать создавать свои собственные.
Автор Уильям Дэвид Эдвардс