Docker и контейнеры
Контейнеры, образы, networking, compose. Без магии: что куда монтируется.
Основы
Чем контейнер отличается от VM и эмуляции. namespaces и cgroups коротко, и что под капотом запускает Docker.
docker run и его флаги, ps/logs/exec, как зайти внутрь работающего контейнера и чем отличается образ от контейнера.
Образ vs контейнер, слои + copy-on-write, тэги и digest, почему latest — ловушка, что такое registry.
FROM, RUN, COPY, CMD, ENTRYPOINT, WORKDIR. Кеш слоёв, .dockerignore, USER non-root, multi-stage build.
bind mount vs named volume vs tmpfs. Анонимные тома и почему их надо чистить. Классическая ловушка с DB_HOST=localhost.
bridge default vs user-defined, DNS по имени сервиса, host и none, port publishing. Почему два разных network не видят друг друга.
Описываем стек в yaml, поднимаем одной командой. depends_on, healthcheck, profiles, основные команды и граница с Kubernetes.
Восемь вопросов на образы, сети, тома, Dockerfile и compose. Можно перепроходить.
Глубже
Где живут Docker-образы: registry, push/pull, теги и digest, приватные реестры и логин.
Почему ENV и build-арги текут, как правильно отдавать секреты контейнеру и BuildKit-секреты на сборке.