Реестр Docker — это важная функция экосистемы Docker. Реестр Docker — это центральный репозиторий или хаб, который позволяет пользователям хранить и совместно использовать образы контейнеров Docker. Используя реестр Docker, вы можете легко создавать, загружать и публиковать образы контейнеров. Затем вы можете обновить и внести изменения в изображения и автоматически применить их к изображению.
Образы Docker — это чертежи для создания контейнеров. Они содержат все необходимые компоненты и инструкции для запуска конкретного приложения или службы.
Прежде чем использовать изображение, вам необходимо загрузить его на локальный компьютер; однако это может быстро стать очень неэффективным. Здесь в игру вступает реестр Docker. Вы можете загрузить нужные изображения с любого хоста с установленным Docker.
Что такое зеркало реестра Docker?
Зеркало реестра Docker — это специализированная копия реестра, которая может служить кэшем или прокси-сервером для быстрого и эффективного управления образами Docker.
Основная цель зеркала реестра — повысить эффективность и скорость получения и распространения образов в среде Docker.
Если вам нужно использовать образ Docker, вы должны загрузить его на свой локальный компьютер. Однако повторная загрузка изображений из Интернета может оказаться неэффективной, особенно при работе с большими изображениями или в ситуациях с ограниченной пропускной способностью.
Здесь в игру вступает зеркало реестра Docker. Вместо получения изображений непосредственно из Интернета вы можете настроить свою среду Docker на получение изображений из ближайшего зеркала реестра Docker.
Распространенный случай использования — запуск нескольких экземпляров Docker. Например, если вы управляете лабораторией, которая использует Docker в качестве технологии виртуализации. Вместо того, чтобы каждый демон Docker подключался к Интернету и при необходимости получал образ, вы можете настроить локальное зеркало реестра и разрешить всем демонам Docker получать из него образы, уменьшая дополнительный трафик.
Как запустить зеркало реестра Docker
Лучший способ запустить зеркало реестра Docker — использовать образ реестра, предоставленный Docker. Этот образ содержит реализацию реестра Docker, которая позволяет хранить и распространять образы Docker.
Начните с выполнения команды «pull», чтобы загрузить изображение, как показано в следующей команде:
$ получение реестра Docker
После загрузки образа мы должны создать файл конфигурации для зеркала реестра. Пример следующий:
бревно:
поля:
сервис: реестр
хранилище:
кэш:
дескриптор большого объекта: inmemory
http:
адрес: : 5000
заголовки:
Параметры типа X-контента: [ нюхать ]
здоровье:
драйвер хранилища:
включено: истинный
интервал: 10 с
порог: 3
Вы можете сохранить этот файл в любом каталоге по вашему выбору, при условии, что у вас есть доступ для чтения и записи.
Затем запустите контейнер зеркала реестра Docker, указав путь к только что созданному файлу конфигурации. Мы также должны указать порт, на котором мы хотим разместить контейнер.
$ запуск докера -д -п 5000 : 5000 --перезапуск = всегда --имя =зеркало реестра -в / путь / к / конфиг.yml: / и т. д. / докер / реестр / реестр config.yml: 2
В зависимости от версии вы можете пропустить настройку и запустить со значениями по умолчанию, используя следующую команду:
Настройка демонов Docker
После запуска зеркала вы можете настроить демоны Docker на использование зеркала реестра, отредактировав файл конфигурации демона. Обычно он находится в /etc/docker/daemon.json.
Добавьте URL-адрес зеркала в раздел реестра-зеркала.
{'зеркала реестра' : [ 'https://<my-docker-mirror-host>' ]
}
Сохраните файл и перезагрузите Docker Engine, чтобы изменения вступили в силу.
Проверьте зеркало реестра
Вы можете протестировать зеркало, получив образ из Docker Hub. Зеркало должно кэшировать изображение локально, сокращая время загрузки. Например:
$ докер тянуть альпийский
Первое получение выполняется из Docker Hub, но последующие извлечения того же образа должны выполняться значительно быстрее.
Заключение
В этом руководстве вы узнали, как настроить зеркало реестра Docker, чтобы ускорить загрузку и распространение образов Docker.