Знакомство с docker
Поговорим о том, что такое Docker. Узнаем, зачем он нужен и почему так популярен. Рассмотрим его основные компоненты — демон, образ, контейнер, репозиторий
первый контейнер
Спуллим образ из Docker Hub. Запустим на его основе свой первый контейнер. Познакомимся с основными командами для работы с докер-контейнерами
создание образа
Узнаем, что такое Dockerfile. Научимся самостоятельно писать инструкции и создадим свой образ. Обсудим best practices работы с образами
работа с файлами
Рассмотрим основные способы обмена данными с контейнером. Познакомимся с двумя типами томов — bind mount и volume. Поговорим об опасностях работы с bind mount
ПЕРЕМЕННЫЕ ОКРУЖЕНИЯ, ЛОГИ И ПОРТЫ
Научимся задавать переменные окружения. Посмотрим на логи приложений в контейнерах. Поговорим о работе с приложениями, которым требуются порты, в том числе ClickHouse, Tabix, PostgreSQL, Superset
ВВЕДЕНИЕ В СЕТИ
Поговорим об IP адресах и сетевой модели TCP/IP. Рассмотрим три базовые сети докера — host, none, bridge. Создадим на базе bridge свою сеть и поднимем бэкенд. Научимся работать с полезной командой docker inspect
ВЕБ-ПРИЛОЖЕНИЕ В КОНТЕЙНЕРАХ
Научимся работать с веб-сервером Nginx. Узнаем, что такое multi-stage builds. Используем новые знания и напишем полноценное веб-приложение
YAML И DOCKER-COMPOSE
Узнаем, что такое docker-compose. Познакомимся с синтаксисом YAML. Рассмотрим реальный docker-compose файл на примере Airflow. Поработаем с командами docker-compose и развернём Airflow на своём компьютере
ВЕБ-ПРИЛОЖЕНИЕ В DOCKER-COMPOSE
Научимся с помощью docker-compose быстро поднимать бэкенд и фронтенд. Рассмотрим основные инструкции для запуска сервисов и напишем свой файл docker-compose.yml. Переведём наше веб-приложение на docker-compose
ЗА ПРЕДЕЛАМИ КОНТЕЙНЕРОВ
Рассмотрим доставку приложений на сервер. Поговорим про Ansible, CI/CD и Kubernetes. Подведём итоги и обсудим, что изучать дальше