Практический курсRU · Linux · Python

Контейнеры
без магии.

От процесса Linux до production pipeline. Научитесь не только запускать Docker-команды, но и объяснять, что происходит на уровне namespaces, cgroups, сетей и файловых систем.

Проверено на Docker 29 4 production-проекта
course-image:2026READY
04
Productionsecurity · observability · CI/CD
+ 36 h
03
Python runtimeFastAPI · workers · signals
+ 12 h
02
Container systemstorage · network · Compose
+ 27 h
01
Linux foundationprocesses · namespaces · cgroups
+ 42 h
$ docker run --rm understanding:latest_
20разделов
174часа практики
4проекта
226документов
01 / МАРШРУТ

От одного процесса
до полной системы.

Пять слоёв знаний собираются последовательно. Первые разделы дают рабочую базу, последние — качество инженерных решений.

01
Ориентация

1 раздел

Цели, компетенции и реалистичное расписание.

02
Фундамент

6 разделов

Linux-механика, images, lifecycle, Dockerfile и Python.

03
Системы

4 разделов

Storage, networking, Compose и ежедневный workflow.

04
Production

6 разделов

Hardening, безопасность, диагностика, registry, tests и CI/CD.

05
Глубина

3 разделов

Internals, Kubernetes и границы применимости Docker.

02 / ПРОГРАММА

Карта курса

Ваш прогресс

0 материалов отмечено · хранится в браузере

00Ориентация

О курсе

Этот файл фиксирует, чему именно учит курс, чему он не учит, какой уровень подготовки предполагается на входе и какой результат считается успешным. Прочитайте его до начала обучения: он задаёт ожидания и помогает выбрать учебное расписание.

1 ч5 материалов
Открыть
01Фундамент

Подготовка среды

Раздел даёт рабочую среду, на которой строится весь остальной курс: проверенную Linux-систему, установленный из официального репозитория Docker Engine, понимание того, чем управляет systemctl, и осознанное решение по вопросу «работать через группу docker или ч

4 ч8 материалов
Открыть
02Фундамент

Основы Containerization

Раздел отвечает на главный вопрос курса: что такое container на самом деле. Ответ короткий — это обычный Linux process, которому ядро подменило представление о системе. Всё остальное в курсе является следствием этого факта.

6 ч9 материалов
Открыть
03Фундамент

Работа с Images

Image — это не «архив с приложением». Это набор неизменяемых слоёв файловой системы плюс метаданные, описывающие, как из них собрать корневую файловую систему и какой процесс в ней запустить. Понимание этой структуры напрямую влияет на три вещи, которые волную

5 ч7 материалов
Открыть
04Фундамент

Containers и lifecycle

Container существует ровно столько, сколько живёт его главный процесс. Это правило объясняет большинство вопросов новичков: почему container «сразу упал», почему docker stop занимает десять секунд, почему приложение не успевает закрыть соединения с базой и поч

6 ч8 материалов
Открыть
05Фундамент

Dockerfile

Dockerfile — это не скрипт установки. Это описание того, как из базового образа получить новый набор слоёв, и одновременно описание того, как запускать полученный образ. Разница принципиальна: скрипт выполняется целиком каждый раз, а Dockerfile выполняется чер

9 ч11 материалов
Открыть
06Фундамент

Python внутри Container

Центральный раздел курса. Всё, что изучалось раньше, здесь применяется к конкретной задаче: собрать образ Python-приложения, который быстро пересобирается, мало весит, корректно логирует, безопасно запускается и правильно завершается.

12 ч15 материалов
Открыть
07Системы

Storage

По умолчанию container не хранит ничего. Всё, что записано в его файловую систему, живёт в writable layer и исчезает вместе с container при docker rm. Это не недостаток, а осознанное проектное решение: оно делает containers взаимозаменяемыми. Но приложениям ну

6 ч8 материалов
Открыть
08Системы

Docker Networking

Этот раздел объясняет, как Docker использует Linux network namespaces, virtual Ethernet pairs, bridges, routing и NAT — и почему из-за непонимания этих механизмов возникает самая частая проблема в контейнеризованных приложениях: «порт опубликован, но сервис не

7 ч8 материалов
Открыть
09Системы

Docker Compose

Compose переводит систему из набора команд в описание. Вместо четырёх длинных docker run с флагами сетей, volumes и переменных окружения — один файл compose.yaml, который можно версионировать, читать и воспроизводить.

8 ч9 материалов
Открыть
10Системы

Development workflow

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

6 ч7 материалов
Открыть
11Production

Production-ready containers

«Работает у меня» и «готово к эксплуатации» — разные состояния. Между ними лежит набор требований, каждое из которых появилось после конкретного инцидента: сервис, который не отдаёт логи; образ, где нашли уязвимость, но никто не знает, какие версии внутри; при

7 ч8 материалов
Открыть
12Production

Security

Раздел начинается с утверждения, которое стоит запомнить дословно: изоляция container не является полноценной границей безопасности . Container — это процесс host-системы, ограниченный namespaces, cgroups и capabilities. Все эти механизмы реализованы в том же

6 ч9 материалов
Открыть
13Production

Observability и диагностика

Диагностика в контейнеризованной среде отличается от обычной не сложностью, а тем, что привычные инструменты находятся не там, где ожидается. Процесс виден на host, но с другим PID. Логов в /var/log нет. ping в образе не установлен. Файловая система приложения

7 ч8 материалов
Открыть
14Production

Registry

Registry — это хранилище образов и единственный механизм, связывающий сборку с развёртыванием. Всё, что касается воспроизводимости доставки, решается здесь: как назвать образ, какой тег считать неизменяемым, как убедиться, что развёрнут именно тот артефакт, ко

4 ч6 материалов
Открыть
15Production

Testing

Containers решают главную проблему интеграционного тестирования: настоящая база данных перестаёт быть дорогим общим ресурсом и становится одноразовым объектом, который создаётся за секунды и удаляется после теста. Это меняет практику — тесты, которые раньше пи

6 ч7 материалов
Открыть
16Production

CI/CD

Раздел собирает весь курс в один автоматический процесс: от коммита до опубликованного и проверенного образа. Это не обзор возможностей CI-систем, а построение конкретного работающего pipeline с разбором каждого решения.

7 ч7 материалов
Открыть
17Глубина

Docker internals

Раздел закрывает вопросы, которые в остальном курсе принимались как данность. Что именно происходит между нажатием Enter и запуском процесса. Почему в цепочке четыре компонента, а не один. Как устроен OCI bundle. Где физически лежит файловая система container

7 ч7 материалов
Открыть
18Глубина

Docker и Kubernetes

Вопрос «Docker или Kubernetes» поставлен неверно, но задают его постоянно. Это инструменты для разных задач: Docker собирает и запускает container на одной машине, Kubernetes управляет множеством containers на множестве машин. Они находятся на разных уровнях,

4 ч6 материалов
Открыть
19Глубина

Ограничения Docker

Курс из восемнадцати разделов, объясняющих, как пользоваться инструментом, обязан закончиться разделом о том, когда им пользоваться не нужно. Без этого обучение даёт не инженера, а сторонника технологии.

4 ч6 материалов
Открыть
03 / ТЕМП

Один курс.
Три реалистичных режима.

План выбирается по доступному времени, а не по амбициям. Все варианты сохраняют практику и контрольные точки.

04 / ПРОЕКТЫ

Докажите навыки
работающим кодом.

Четыре проекта проходят путь от CLI-утилиты до production pipeline. Для каждого есть задание, чеклист и отдельное эталонное решение.

05 / ИНСТРУМЕНТЫ

Не только читать.
Искать, проверять, применять.

$docker course start_
Готовы разобрать контейнер до ядра?

Начните с карты компетенций.

Открыть раздел 00 →