Развертывание образа в Docker Hub
- Published on
- Authors
- Name
- Vasiliy Kramarenko
- @kramvas07
В моей статье мы успешно создали образ докера для нашего простого веб-приложения «Hello Word» на React. Вы можете сначала почитать ее и создать свой образ, а затем вернуться сюда, чтобы развернуть образ в Docker Hub. Если у вас уже есть образ, ожидающий развертывания, оставайтесь здесь.
В этой статье, чтобы обеспечить полное понимание того, что мы собираемся делать, мы разбиваем ее на следующие подзаголовки:
- Реестры Docker
- Docker hub
- Создание нашего репозитория в docker hub
- Публикация нашего образа в docker hub
Давай начнем!
Реестры Docker
Теперь, когда у нас есть образ докера, что нам с ним делать?
Что ж, здесь в игру вступают докеры. Реестр докеров - это серверное приложение, которое позволяет хранить и распространять образы докеров. Таким образом, реестр докеров - это в основном Github для образов докеров. Вы можете отправить свои образы в реестр, и вы можете получить свои образы, а также другие образы из реестра.
- docker pull: эта команда, для получения указанных образов из реестра докеров.
docker pull image
docker push: эта команда, как вы, должно быть, догадались, возьмет указанные образы и отправит их в реестр докеров.
docker push image
Реестр докеров, как и репозитории Github, может быть двух типов:
- Public: ваши образы могут быть доступны для всех.
- Private: ваши образы не могут быть просмотрены и доступны никому.м
Docker Hub
Docker Hub - это облачный реестр докеров, который позволяет хранить образы и облегчает различные действия, выполняемые с вашими образами. Docker Hub может предложить несколько функций, но в этой статье мы сосредоточимся на отправке образов в этот реестр.
Создание нашего репозитория в Docker Hub
Чтобы начать с этого, нам сначала нужно перейти на веб-сайт Docker Hub, и, если вы еще этого не сделали, создать учетную запись. Если у вас уже есть учетная запись, просто войдите в нее.
Вы должны увидеть что-то похожее на экран ниже:
В настоящее время у нас нет репозиториев, поэтому мы собираемся создать его, нажав кнопку Create Repository.
Итак, мы должны назвать наш репозиторий и описать его, мы также можем выбрать, останется ли наш репозиторий частным или мы не против, чтобы он был общедоступным. Я заполнил форму предпочтительными данными, вы можете назвать свой репозиторий как хотите и описать его как хотите.
Отправка нашего образа в Docker Hub
Пока что мы проделали большую работу по пониманию того, что такое реестр докеров, и мы создали репозиторий в реестре концентратора докеров. Теперь мы собираемся взять наш образ и отправить его в наш репозиторий.
Если вы запустите эту команду;
docker images
Вы увидите список ваших образов
REPOSITORY TAG IMAGE ID CREATED SIZE
react-kramar latest 9c6b6a734243 5 minutes ago 1.37GB
Это образ, которое мы создали из нашего приложения React в предыдущем уроке. Мы собираемся работать с этим, если у вас уже есть ваш образ, вы можете работать и с ним.
Перед тем, как отправить, мы сначала должны привязать наш локальный образ к имени нашего репозитория. Это команда:
docker tag local-image:tagname new-repo:tagname
В нашем случае это будет:
docker tag react-kramar:latest kramarenko/react-kramar:1
Имя вашего тега может быть любым, каким вы хотите его видеть. Я решил использовать 1.
После этого при запуске команды:
docker images
Вы должны увидеть новое имя и тег, который мы только что указали, а также наше исходное имя изображения и тег:
REPOSITORY TAG IMAGE ID CREATED SIZE
kramarenko/react-kramar 1 994326af0be2 5 hours ago 1.26GB
react-kramar latest 994326af0be2 5 hours ago 1.26GB
Последний шаг - использовать команду push в вашем терминале, напишите следующее и нажмите Enter:
docker push kramarenko/react-kramar:1
Если вы не авторизовались в Docker Hub введите команду
docker login
и введите свой логин и пароль.
Он будет отвечать за отправку нашего образа в Docker Hub. После успешного запуска мы можем вернуться на страницу репозитория Docker Hub и перезагрузить его, чтобы увидеть наш недавно добавленный образ.
Здесь мы взяли наш образ докера и развернули его в Docker Hub. Чтобы получить более широкое представление о функциях и их преимуществах, вы можете продолжить и прочитать об этом дальше в документации.