Реальная сила Docker заключается в настройке базового изображения docker в соответствии с вашими требованиями. С его помощью можно легко и быстро развернуть пользовательскую среду Linux, запустив контейнер из этого пользовательского образа docker.
Docker предоставляет простой способ настроить любой образ docker и создать свой собственный пользовательский образ с помощью dockerfile.
Из этой статьи вы узнаете, как извлечь официальный образ из репозитория Docker и настроить его в соответствии со своими требованиями. А затем можно запустить и проверить пользовательский образ docker.
Создание пользовательского образа docker
Итак, в этом примере вы будете использовать образ Alpine Linux, который по умолчанию не включает редактор Vim. Вы измените этот образ для создания нового образа Docker в Alpine Linux, который по умолчанию включает редактор Vim.
Для загрузки образа базового Docker вам понадобится активное интернет-соединение.
Шаг 1: Получить образ Docker [необязательно]
Мы выбрали Alpine Linux в этом примере, потому что он очень маленький. Размер образа Docker Alpine едва ли составляет 5 МБ. Вы можете в это поверить? Это идеальный дистрибутив Linux для контейнеров.
Этот шаг не является обязательным. Мы включили его, чтобы показать, как вы могли сравнить его с настроенным изображением Docker.
Извлеките последний образ Docker Alpine Linux с помощью команды docker pull:
docker pull alpine
Шаг 2: Создайте Dockerfile с необходимой настройкой
Теперь давайте создадим новый пустой файл с именем Dockerfile с помощью команду touch.
touch Dockerfile
Теперь вам нужно отредактировать этот файл и эти три строки и сохранить его. Вы можете использовать текстовый редактор, такое как Vim или Nano, или команду cat, чтобы добавить эти строки в Dockerfile.
FROM alpine:latest RUN apk update RUN apk add vim
Здесь вы создаете новый образ Docker, загружая последний Docker Alpine из Docker Hub.
Как и apt, Alpine использует менеджер пакетов apk. Поэтому следующие две команды в основном сообщают Alpine linux обновить имеющийся кеш пакета (apk update) и затем установить Vim (apk add vim).
Как вы можете видеть, с помощью RUN в Dockerfile вы можете настроить свой базовый образ докера, выполнив определенные команды.
Шаг 3. Создайте собственный образ Docker с помощью Dockerfile
Команда для создания пользовательского образа из Dockerfile выглядит следующим образом:
docker build -t new_docker_image_name PATH_to_Dockerfile
С помощью тега -t вы указываете имя своего настраиваемого образа Docker.
Учитывая, что ваш Dockerfile находится в вашем текущем каталоге, вы можете создать новый образ Docker Alpine Linux с установленным Vim следующим образом:
docker build -t alpine-with-vim
Давайте теперь посмотрим доступные образы Docker в системе:
andreyex@destroyer:~$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE alpine-with-vim latest fa8255cf0de0 4 seconds ago 32.1MB alpine latest a187dde48cd2 2 weeks ago 5.4MB
Вы можете видеть, что базовый образ Docker размером чуть более 5 МБ теперь составляет 33 МБ с установленным Vim (и обновленным кэшем пакетов).
Теперь давайте проверим, что на ваших модифицированных образах Docker установлен vim, запустив из него контейнер :
docker container run -ti alpine-with-vim /bin/sh
Как только вы окажетесь внутри контейнера, вы можете убедиться, что Vim установлен, проверив его версию:
/ # vim --version VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Dec 12 2019 19:30:49) Compiled by Alpine Linux
Выйдите из контейнера, набрав команду exit в терминале. Остановите контейнер, удалите контейнер и удалите образы Docker (если хотите), чтобы освободить место на диске.
Отлично! Вы только что узнали, как создать свой собственный настроенный образ Docker.
Мы знаем, что это не очень обширная статья, и у вас могут быть сложные потребности. Но эта статья является первым шагом к пониманию настройки образа Docker.
Мы настоятельно рекомендуем прочитать больше о Dockerfile, чтобы узнать, какие другие опции доступны для настройки образов Docker.
Если у вас есть вопросы или предложения, пожалуйста, оставьте комментарий ниже.