JavaRush /Курси /Модуль 2: Fullstack /Публікація образів у Docker Hub

Публікація образів у Docker Hub

Модуль 2: Fullstack
Рівень 13 , Лекція 8
Відкрита

9.1 Публікація образів: команда docker push

Ти вже знаєш, що Docker Hub — це хмарна платформа для зберігання, обміну та управління Docker-образами. Тут розробники можуть легко ділитися своїми образами з колегами або публікувати їх для широкого загалу. Робота з Docker Hub схожа на роботу з Git. Основні команди — це docker push та docker pull. У цій лекції ми розглянемо, як використовувати ці команди для публікації та завантаження Docker-образів.

Команда docker push використовується для відправлення локальних Docker-образів у Docker Hub. Перш ніж публікувати образ, переконайся, що він помічений тегом, який містить твоє ім'я користувача на Docker Hub.

Кроки для публікації образу

Крок 1. Збірка Docker-образу:

Якщо у тебе ще нема зібраного образу, створи його за допомогою команди docker build.

Terminal


docker build -t myapp:latest . 

Крок 2. Тегування образу:

Щоб опублікувати образ у Docker Hub, його потрібно тегувати з вказанням твого імені користувача на Docker Hub.

Terminal


docker tag myapp:latest yourusername/myapp:latest 

Крок 3. Публікація образу:

Використовуй команду docker push для відправлення образу у Docker Hub.

Terminal


docker push yourusername/myapp:latest

Приклад:

Terminal


docker build -t myapp:1.0 .
docker tag myapp:1.0 yourusername/myapp:1.0
docker push yourusername/myapp:1.0

9.2 Завантаження образів: команда docker pull

Команда docker pull використовується для завантаження образів із Docker Hub на вашу локальну машину. Це дозволяє отримати доступ до образів, опублікованих іншими користувачами або вашою командою.

Кроки для завантаження образу

Крок 1. Пошук образу:

Використовуйте команду docker search, щоб знайти потрібний образ у Docker Hub.

Terminal


docker search nginx

Крок 2. Завантаження образу:

Використовуйте команду docker pull, щоб завантажити образ на вашу локальну машину.

Terminal


docker pull yourusername/myapp:latest

Приклад:

Terminal


docker pull nginx:latest

9.3 Повний приклад

Повний приклад робочого процесу публікації та завантаження образів:

Крок 1: Збірка образу

Створіть Dockerfile для вашого застосунку. Наприклад, для застосунку на Node.js:

dockerfile


# Використовуємо базовий образ Node.js
FROM node:14
        
# Встановлюємо робочу директорію
WORKDIR /app
        
# Копіюємо package.json і встановлюємо залежності
COPY package*.json ./
RUN npm install
        
# Копіюємо решту коду застосунку
COPY . .
        
# Відкриваємо порт
EXPOSE 3000
        
# Запускаємо застосунок
CMD ["node", "app.js"] 

Зберіть образ за допомогою команди docker build.

Terminal


docker build -t mynodeapp:latest .

Крок 2: Тегування образу

Додайте тег до образу із зазначенням вашого імені користувача на Docker Hub.

Terminal


docker tag mynodeapp:latest yourusername/mynodeapp:latest 

Крок 3: Публікація образу

Відправте образ у Docker Hub.

Terminal


docker push yourusername/mynodeapp:latest 

Крок 4: Завантаження образу

Тепер інший користувач або ваш колега може завантажити цей образ на свою локальну машину.

Terminal


docker pull yourusername/mynodeapp:latest 

Крок 5: Запуск контейнера із завантаженого образу

Після завантаження образу ви можете запустити контейнер на його основі.

Terminal

        
docker run -d -p 3000:3000 yourusername/mynodeapp:latest 
1
Опитування
Керування образами, рівень 13, лекція 8
Недоступний
Керування образами
Керування образами
Коментарі (2)
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ
Марк Рівень 47
26 квітня 2025
завдання - "Публікація власного образу в Docker Hub" - не має опису як виконати авторизацію у docker! (docker login)
20 вересня 2025
після некоректної валідації там дає підказку