Prog Academy
RU UA

Курс по подписке

Docker с нуля: контейнеры, Docker Compose и практика

Docker с нуля: от первого контейнера до собственного стека в Docker Compose

  • 15 модулей
  • 40+ практических заданий
  • Автоматическая проверка
  • На русском

Получить доступ к курсу

Курс по подписке · Обучение в своём темпе

О курсе

Что это за курс?

Практический курс для тех, кто никогда не работал с Docker. Вы начнёте с проблемы, знакомой каждому разработчику («а у меня работает!»), и шаг за шагом научитесь запускать, собирать, соединять и отлаживать контейнеры — вплоть до многоконтейнерного приложения с базой данных, кешем и продакшен-настройками.

Аудитория

Для кого этот курс?

  • Начинающий разработчик

    Упакуете приложение в образ, напишете Dockerfile и поднимете стек с базой данных и кешем в Docker Compose.

  • Тестировщик

    Найдёте причину, когда контейнер падает, не видит базу или не собирается: логи, exec, сети и тома.

  • Ещё не работали с Docker

    Опыт с Docker не нужен: задания выполняете в тренажёре Docker в браузере и видите вывод команд.

Можно начать с нуля

Предварительный опыт не нужен — начинайте с первого модуля.

  1. Опыт не нужен
  2. Начните здесь Docker с нуля: контейнеры, Docker Compose и практика

Результат

Чему вы научитесь

запускать и исследовать контейнеры: docker run, ps, logs, exec

понимать образы, слои и теги и не попадать в ловушку latest

писать Dockerfile, пользоваться кешем сборки и .dockerignore, делать образы маленькими

открывать порты, соединять контейнеры сетями и хранить данные в томах

настраивать приложение переменными окружения и не допускать утечки секретов

описывать целый стек в compose.yaml и управлять им командой docker compose

находить причину, когда контейнер падает, не видит базу или не собирается

писать многоэтапные безопасные Dockerfile, публиковать образы в реестр и готовить стек к продакшену

Формат

Как устроено обучение?

Около 80% курса — практика. Каждое задание выполняется в тренажёре Docker прямо в браузере: вы пишете команды, Dockerfile или compose.yaml, нажимаете «Запустить» и видите настоящий вывод Docker, а автоматическая проверка смотрит на результат — запущенные контейнеры, образы, сети, тома и ответы приложения. Те же файлы работают и с настоящим Docker на вашем компьютере.

  • Теория

    30 уроков с примерами

  • Практика в браузере

    40+ заданий с автоматической проверкой

  • Тесты

    15 тестов для самопроверки

  • Свой темп

    Онлайн на my.prog.academy, без установки программ

Платформа Prog Academy

Больше, чем доступ к курсу

Курс проходит на платформе Prog Academy — вместе с ним вы получаете AI-помощника и инструменты для поиска первой работы в IT.

Обучение

90% практики

Вы учитесь, выполняя задания: каждую новую тему сразу применяете на практике, а не только читаете теорию. Задания проверяются автоматически, прямо в браузере.

AI-помощник по обучению

Вы не остаётесь один на один с материалом

Что-то непонятно или застряли на задании — спросите прямо в уроке. Помощник объяснит тему проще, ответит на вопросы, поможет разобраться в условии задания и подскажет следующий шаг, найдёт нужное в материалах курса. Он знает, какой урок вы проходите, и помнит разговор.

Карьера

  • Сертификат после окончания курса

    Успешно прошли курс — получаете сертификат и в один клик добавляете его в профиль LinkedIn.

  • Конструктор резюме

    Резюме на английском, украинском или русском — прямо на платформе. Ваши курсы и сертификаты добавляются в него в пару кликов.

  • База вакансий

    Junior-вакансии и стажировки в одном месте — с подборкой под курсы, которые вы проходите.

Вся платформа — в одном аккаунте

  • Все ваши курсы
  • Прогресс по каждому курсу
  • Обучение в своём темпе
  • Ничего не нужно устанавливать

Программа

Программа курса

15 модулей, 40+ практических заданий с автоматической проверкой и 15 тестов. Откройте модуль, чтобы увидеть все темы.

Модуль 1. Зачем Docker 3 урока · 2 практики · 1 тест

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

  • Теория Проблема «а у меня работает»
  • Теория Образы, контейнеры и реестры: как устроен Docker
  • Теория Установка Docker и тренажёр курса
  • Практика Практика 1.1: Первый контейнер
  • Практика Практика 1.2: Два дистрибутива Linux за секунду
  • Тест Зачем Docker
Модуль 2. Первые контейнеры 2 урока · 4 практики · 1 тест

Запуск, остановка и удаление контейнеров, журналы, команды внутри контейнера и причины, по которым контейнер завершается.

  • Теория Жизненный цикл контейнера: run, ps, stop, start, rm
  • Теория Заглянуть внутрь: logs, exec, inspect
  • Практика Практика 2.1: Веб-сервер в фоне
  • Практика Практика 2.2: Наведите порядок в контейнерах
  • Практика Практика 2.3: Redis: команда внутри контейнера
  • Практика Практика 2.4: Почему контейнер сразу завершился
  • Тест Жизненный цикл контейнера
Модуль 3. Образы Docker 2 урока · 3 практики · 1 тест

Из чего состоят образы, как читать их имена и теги, почему latest — ловушка и как убирать ненужные образы.

  • Теория Образ изнутри: слои, реестр и Docker Hub
  • Теория Теги и версии: почему latest — ловушка
  • Практика Практика 3.1: Подготовьте образы для проекта
  • Практика Практика 3.2: Прочитайте тег образа
  • Практика Практика 3.3: Обновление latest сломало базу
  • Тест Образы и теги
Модуль 4. Собственный образ: Dockerfile 2 урока · 3 практики · 1 тест

Пишем Dockerfile: упаковываем сайт и Python-скрипт в собственные образы и управляем тем, как контейнер запускает программу.

  • Теория Первый Dockerfile: FROM, WORKDIR, COPY, RUN, CMD
  • Теория ENV, EXPOSE, ENTRYPOINT и CMD: как контейнер запускает программу
  • Практика Практика 4.1: Статичный сайт в собственном образе
  • Практика Практика 4.2: Python-скрипт в образе
  • Практика Практика 4.3: ENTRYPOINT, CMD и ENV
  • Тест Dockerfile
Модуль 5. Контекст сборки и оптимизация 2 урока · 3 практики · 1 тест

Ускоряем сборку и уменьшаем образ: .dockerignore, кеш слоёв, правильный порядок инструкций и лёгкие базовые образы.

  • Теория Контекст сборки и .dockerignore
  • Теория Слои и кеш: как собирать быстро и компактно
  • Практика Практика 5.1: Худой контекст сборки: dockerignore
  • Практика Практика 5.2: Кеш зависимостей
  • Практика Практика 5.3: Образ на диете
  • Тест Контекст, кеш и размер образа
Модуль 6. Порты и сети 2 урока · 3 практики · 1 тест

Открываем контейнеры наружу через публикацию портов и связываем их между собой в собственных сетях Docker.

  • Теория Порты: как достучаться до контейнера
  • Теория Сети Docker: как контейнеры находят друг друга
  • Практика Практика 6.1: Порты и занятый 8080
  • Практика Практика 6.2: Своя сеть и DNS по имени
  • Практика Практика 6.3: Приложение и база в отдельных контейнерах
  • Тест Порты и сети
Модуль 7. Данные и тома 2 урока · 2 практики · 1 тест

Почему данные исчезают вместе с контейнером и как сохранить их в именованных томах и подключить файлы проекта через bind mount.

  • Теория Почему данные исчезают: слой записи контейнера
  • Теория Тома и bind mounts на практике
  • Практика Практика 7.1: База, которая помнит
  • Практика Практика 7.2: Живой сайт через bind mount
  • Тест Данные и тома
Модуль 8. Переменные окружения и конфигурация 2 урока · 2 практики · 1 тест

Как настраивать один образ для разных сред переменными окружения и не допустить, чтобы пароли попали в образ или в Git.

  • Теория Переменные окружения: один образ — разные настройки
  • Теория Секреты: что никогда не кладут в образ и в Git
  • Практика Практика 8.1: Один образ — два окружения
  • Практика Практика 8.2: Уберите пароль из образа
  • Тест Переменные окружения и секреты
Модуль 9. Docker Compose 3 урока · 4 практики · 1 тест

Как описать весь стек в одном compose.yaml — сервисы, тома, сеть, переменные и healthcheck — и управлять им каждый день командами docker compose.

  • Теория Зачем Compose: от пяти docker run к одному файлу
  • Теория Compose глубже: build, volumes, depends_on и healthcheck
  • Теория Ежедневная работа с Compose: up, ps, logs, exec, down
  • Практика Практика 9.1: Первый compose.yaml
  • Практика Практика 9.2: Приложение и база в Compose
  • Практика Практика 9.3: Добавляем Redis
  • Практика Практика 9.4: Управляйте стеком командами Compose
  • Тест Docker Compose
Модуль 10. Отладка контейнеров 2 урока · 5 практик · 1 тест

Как системно искать причину сбоя (ps -a → logs → inspect → exec) и исправлять типичные поломки: переменные, сети, порты, сборку и права на тома.

  • Теория Как искать причину: logs → ps → inspect → exec
  • Теория Типичные поломки и что они означают
  • Практика Практика 10.1: Стек не поднимается
  • Практика Практика 10.2: Приложение не видит базу
  • Практика Практика 10.3: Занятый порт и не тот порт
  • Практика Практика 10.4: Сборка падает
  • Практика Практика 10.5: Нет прав на запись в том
  • Тест Отладка контейнеров
Модуль 11. Лучшие Dockerfile 2 урока · 2 практики · 1 тест

Многоэтапные сборки для лёгких образов и привычки надёжного образа: пользователь не root, exec-форма CMD, HEALTHCHECK, никаких секретов.

  • Теория Многоэтапные сборки: инструменты отдельно, результат отдельно
  • Теория Надёжный и безопасный образ: пользователь, HEALTHCHECK, exec-форма
  • Практика Практика 11.1: Многоэтапная сборка
  • Практика Практика 11.2: Плохой Dockerfile → хороший
  • Тест Лучшие Dockerfile
Модуль 12. Реестры образов 1 урок · 2 практики · 1 тест

Как образ попадает на другой компьютер: реестры, репозитории и теги, собственный реестр, docker login/tag/push и безопасная стратегия тегов.

  • Теория Реестры: как образ попадает на другой компьютер
  • Практика Практика 12.1: Собственный реестр
  • Практика Практика 12.2: Публикация на Docker Hub (имитация)
  • Тест Реестры
Модуль 13. Разработка с Docker 2 урока · 2 практики · 1 тест

Повседневная разработка с Docker: когда пересобирать, override-файлы для живого кода и тесты в одноразовом контейнере.

  • Теория Цикл разработки с Docker: код → сборка → запуск → тест
  • Теория Dev-окружение в Compose: живой код, override-файлы, тесты в контейнере
  • Практика Практика 13.1: Код без пересборки: compose.override.yaml
  • Практика Практика 13.2: Тесты в контейнере
  • Тест Разработка с Docker
Модуль 14. Введение в продакшен-концепции 2 урока · 2 практики · 1 тест

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

  • Теория От ноутбука к серверу: что меняется в продакшене
  • Теория Безопасность контейнеров и что изучать дальше
  • Практика Практика 14.1: Готовим compose.yaml к продакшену
  • Практика Практика 14.2: Какую политику перезапуска выбрать
  • Тест Продакшен-концепции
Модуль 15. Итоговый проект 1 урок · 4 практики · 1 тест

Итоговый проект: «Заметки команды» от Dockerfile до стека с базой и кешем, отладки и релиза в реестр.

  • Теория Итоговый проект: «Заметки команды» в контейнерах
  • Практика Практика 15.1: Образ приложения: Dockerfile и dockerignore
  • Практика Практика 15.2: Весь стек в compose.yaml
  • Практика Практика 15.3: Релиз не поднимается: отладка
  • Практика Практика 15.4: Релиз 2.0 без простоя базы
  • Тест Итоговый тест

Стек

Какие технологии используются?

  • Docker
  • Docker Compose

Код пишете и запускаете в браузере на платформе — устанавливать ничего не нужно.

Доступ

Как получить доступ?

  1. Оставьте заявку

    Заполните короткую форму на этой странице.

  2. Завершите регистрацию в Telegram

    После заявки перейдите в Telegram-бот Prog Academy — он пришлёт дальнейшие инструкции по доступу.

  3. Учитесь на платформе

    Уроки, практика и тесты — на my.prog.academy, в удобном для вас темпе.

Контакт

Начните обучение на платформе

Оставьте контакты — пришлём детали доступа к курсу «Docker с нуля: контейнеры, Docker Compose и практика».

Другие курсы по подписке

Python

Асинхронный Python: asyncio на практике

Научитесь писать программы, которые не простаивают, пока ждут сеть, диск или другой сервис

10 модулей · 30+ практических заданий

Частые вопросы о курсе

Что это за курс?

«Docker с нуля: контейнеры, Docker Compose и практика» — онлайн-курс по подписке на учебной платформе Prog Academy. Docker с нуля: от первого контейнера до собственного стека в Docker Compose. Практический курс для тех, кто никогда не работал с Docker. Вы начнёте с проблемы, знакомой каждому разработчику («а у меня работает!»), и шаг за шагом научитесь запускать, собирать, соединять и отлаживать контейнеры — вплоть до многоконтейнерного приложения с базой данных, кешем и продакшен-настройками.

Для кого этот курс?

Для начинающих разработчиков, тестировщиков и всех, кто хочет уверенно работать с контейнерами. Опыт с Docker не нужен; уметь программировать не обязательно — готовые приложения курс даёт сам. Желательно уметь работать в командной строке: если вы ещё не пробовали, начните с курса «Основы Linux».

Какие технологии используются?

Docker, Docker Compose. Код пишете и запускаете прямо в браузере на платформе — устанавливать ничего не нужно.

Сколько модулей в курсе?

15 модулей: Зачем Docker; Первые контейнеры; Образы Docker; Собственный образ: Dockerfile; Контекст сборки и оптимизация; Порты и сети; Данные и тома; Переменные окружения и конфигурация; Docker Compose; Отладка контейнеров; Лучшие Dockerfile; Реестры образов; Разработка с Docker; Введение в продакшен-концепции; Итоговый проект. Практических заданий с автоматической проверкой — 40+, тестов — 15.

Как получить доступ?

Оставьте заявку на этой странице и завершите регистрацию в Telegram-боте Prog Academy — там вы получите дальнейшие инструкции по доступу. Обучение проходит на платформе my.prog.academy в своём темпе.

Входит ли курс в подписку?

Да. Курс входит в подписку на платформе Prog Academy: доступ ко всем курсам по подписке; ai-помощник по обучению в каждом курсе; все уроки, домашние задания и автоматическая проверка; новые курсы по подписке добавляются автоматически.

Не нашли ответ?

Оставьте вопрос — подскажем, подходит ли вам курс и с чего лучше начать.