Сегодня мы обсудим реестр Docker и способы его использования.
Как вы все, наверное, знаете, Docker позволяет нам создавать виртуальные машины, которые лаконично заключают приложения, программы и их зависимости в контейнер. Это отличается от гипервизора в том смысле, что он контейнеризирует приложения посредством виртуализации, тогда как гипервизор имитирует операционную систему и ее содержимое. Docker упрощает процесс распространения приложений, помещая их в контейнеры через реестры докеров.
Мы упустим детали в этом разделе, но если вы привыкли устанавливать такое программное обеспечение, вы прекрасно справитесь с приведенными здесь инструкциями. Мы рассмотрим метод настройки Docker по умолчанию; через официальный репозиторий докеров:
Выполните команду ниже, чтобы получить права администратора:
$ sudo apt update
Затем используйте команду curl, чтобы добавить ключ репозитория докеров с помощью следующей команды:
$ sudo apt install apt-transport-https ca-certificates curl software-properties-common
Затем добавьте путь к репозиторию, который ведет к тому, где находятся файлы пакета:
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"
Обновить репозиторий apt:
$ sudo apt update
Затем установите Docker:
$ apt-cache policy docker-ce
$ sudo apt install docker-ce
$ sudo systemctl status docker
Прежде чем мы углубимся в детали, давайте сначала рассмотрим основы.
Два типа реестров докеров – частные и общедоступные.
Реестры, такие как Quay, Docker Hub, Google Container и AWS Container, являются частными.
Реестр Docker Hub, с другой стороны, является хостом на уровне сообщества – своего рода общедоступным реестром.
Эти реестры содержат изображения и позволяют пользователям загружать или скачивать их. В следующем разделе мы увидим, как именно это делается.
Мы будем использовать общедоступный реестр, который вам предоставляет docker при регистрации. Вам не нужно регистрировать учетную запись для переноса изображений на диск, однако вам необходимо загрузить их.
Чтобы зарегистрировать учетную запись пользователя, перейдите на официальный сайт докеров: https://hub.docker.com/
Введите свои учетные данные и создайте учетную запись; затем вернитесь сюда и щелкните указанную ссылку: https://hub.docker.com/explore/
Выберите изображение. В целях демонстрации мы загрузим версию PHP и рекомендуем вам сделать то же самое. Здесь вы найдете образ PHP: https://hub.docker.com/_/php/
Убедитесь, что у вас есть права root, затем введите команду ниже:
$ docker pull php
После выполнения приведенной выше команды образ PHP запишется на ваш диск.
Получите доступ к файлу докера с помощью следующей команды:
$ nano docker file
Затем введите эти команды, чтобы получить содержимое php 7, поэтому, когда контейнер запущен, зависимости ищутся отсюда.
$ FROM php:7.0-cli
Чтобы скопировать файлы из источника в каталог, введите следующее:
$ COPY . /usr/src/myapp
Теперь используйте данную команду, чтобы рабочий каталог называл рабочий каталог как путь:
$WORKDIR /usr/src/myapp
Затем укажите, что команда запускается позже:
$ CMD [ "php", "./donscript.php" ]
Теперь, когда мы создали файл Docker, нам нужно скомпилировать его для создания образа Docker.
$ docker build -t donapp
В случае, если сценарий php запрашивает доступ к веб-браузеру для отображения функций, вы можете выполнить следующую команду, чтобы включить веб-хост по умолчанию:
$ docker run php -S localhost:8000
Каталог dockerfile и скрипта должен быть одинаковым. Убедитесь, что вы правильно назвали сценарий, как указано ранее в команде CMD.
Наш образ докера готов к работе:
$ docker run donapp
Если по какой-то причине вы не можете выполнить компиляцию, вы можете использовать команду ниже, указав имя сценария:
docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp php:7.0-cli php donscript.php
Вы можете просматривать изображения через терминал, даже не открывая браузер. Просто введите команду ниже с изображением, которое существует на вашем жестком диске:
$ docker search <image name> example: docker search ubuntu
Если вы загружаете для личного использования или в группе людей, например, коллег, вам следует загрузить в частный реестр. Если вы хотите поделиться чем-то публично, вам, очевидно, следует выбрать вариант публичного реестра.
Войдите в свою учетную запись Docker Hub и войдите в реестр с помощью приведенной ниже команды с именем пользователя:
$ docker login –username MYUSERNAME
Затем введите пароль, когда будет предложено:
Используйте формат ниже, чтобы пометить программу.
$ docker tag donapp dondilanga/donapp
Теперь загрузите изображение с помощью следующей команды:
$ docker push dondilanga/donapp
В этой статье были рассмотрены основы использования Docker и его реестров. Мы также обсудили, как вы можете установить его через официальные репозитории Docker. Кроме того, мы изучили, как создаются файлы Docker и выполняются изображения.