Публичные репозитории Docker

Читать первым в Telegram

Публичные репозитории могут использоваться для размещения образов Docker, откуда могут быть получены всеми желающими. Примерами являются образы, доступные на Docker Hub. Многие из них, например, такие, как CentOS, Ubuntu, Jenkins, являются общедоступными для всех. Мы также можем загружать свои образы в публичный репозиторий на Docker Hub.

В качестве примера для загрузки, возьмём репозиторий myimage, собранный в главе “Сборка Файлов Docker”. Первым делом рассмотрим образы на нашем хосте Docker, чтобы увидеть, что мы можем отправить в реестр Docker.

Здесь у нас есть образ myimage:0.1, который мы и будем использовать для загрузки в публичный репозиторий Docker.

Пошагово рассмотрим, как мы можем загрузить образ в публичный репозиторий.

Шаг 1. Перейдите по ссылке и войдите в свой аккаунт на Docker Hub.

Шаг 2. Нажмите на кнопку “Create Repository”, как на скриншоте выше, и создайте репозиторий под названием demorep. Убедитесь в том, что видимость (visibility) репозитория выставлена на public.

После создания репозитория скопируйте команду pull.

Команда pull, которая будет использоваться в нашем репозитории, выглядит следующим образом:

docker pull demousr/demorep

Шаг 3. Теперь вернитесь к хосту Docker. Здесь нам нужно привязать наш myimage к новому репозиторию, созданному в Docker Hub. Сделать это можно с помощью команды Docker tag.

Позже мы детальнее рассмотрим данную команду.

Шаг 4. Введите команду Docker login, чтобы войти в репозиторий Docker Hub из командной строки. Команда входа в Docker запросит у вас имя пользователя и пароль для хранилища Docker Hub.

Шаг 5. После того как образ был привязан, пришло время отправить его в хранилище Docker Hub. Мы можем сделать это с помощью команды Docker push.

Позже мы детальнее рассмотрим данную команду.

docker tag

Данный метод позволяет привязать образ к соответствующему репозиторию.

docker tag imageID Repositoryname
  • imageID — идентификатор образа, который необходимо привязать к репозиторию.
  • Repositoryname — имя репозитория, к которому должен быть привязан идентификатор образа.

Пример

sudo docker tag ab0c1d3744dd demousr/demorep:1.0

Пример вывода:

docker push

Данный метод позволяет передавать образы в Docker Hub.

docker push Repositoryname
  • Repositoryname — имя репозитория, которое необходимо передать в Docker Hub

Вывод вернёт идентификатор репозитория, переданного в Docker Hub.

Пример

sudo docker push demousr/demorep:1.0

Пример вывода:

Если вы вернётесь на Docker Hub и зайдёте в свой репозиторий, то увидите имя тега в репозитории.

Теперь давайте попробуем передать репозиторий, который мы загрузили, на наш хост Docker. Первым делом удалим образы myimage:0.1 и demousr/demorep:1.0 с локального хоста Docker. Воспользуемся командой Docker pull, чтобы передать репозиторий из Docker Hub на наш хост.

На приведённом выше скриншоте видно, что команда Docker pull взяла наш новый репозиторий из Docker Hub и разместила его на нашей машине.

Источник: Docker — Public Repositories

Поддержать проект

Социальные сети проекта:

Подпишись, чтобы ничего не пропустить!