«У меня на ноуте работало!»
- сказал каждый разработчик, чей контейнер умер на сервере при первом же взгляде.
🎹Чтобы не собирать проект по кускам с опсами, которые смотрят на тебя как на предателя, вот вам гайд от выжившего в Docker:
⏺1) .dockerignore - твой лучший друг
Не тащи в образ мусорные файлы, кэш и соседского кота.
«Но там же нужен node_modules!» — сказал только тот, кто не знает про npm install.
Помни, что при использовании multistage сборки бывает уместно копировать node_modules между стадиями внутри Dockerfile, но не тянуть из хоста ☕️
⏺2) Фиксируй версии образов (и да, только дайджесты!).
Latest - это игра в русскую рулетку.
Сегодня - Ubuntu, завтра - Arch Linux с сюрпризом. В 2025 даже тег nginx:1.24 может меняться.
Хочешь спать спокойно
- используй дайджесты (image@sha256:...).
⏺3) Переменные окружения
- не просто буквы!
Проверяй их как пароль от Wi-Fi. Один не тот символ - и сервис плачет в углу.
«А у меня на локальном всё работало!» - потому что там ENV=local, а на продакшене
- production.
Инициализируй .env из шаблона (.env.example) и явно передавай через --env-file чтобы точно избежать сюрпризов 🏥
⏺4) Сканируй образы на уязвимости.
Твой контейнер не должен быть троянским конём. Это обязательно как мыть руки.
⏺5) Тестируй на чистом образе.
Запусти контейнер на чистой системе - если выжил, ты молодец. Если нет - твой код видели только боги и ты. И они плачут.
⏺6) Логи - твой личный детектив!
Docker logs - это не совет, а правило. Не гадай, почему упало - читай, что тебе пишут.
«А почему он упал?» - спросил разработчик. «Спроси у логов!»
- ответил опс с лицом Шерлока.
Используй перенаправление stdout/stderr, чтобы потом собрать через ELK или Loki ✋
⏺7) Знай, что Docker - не единственный.
Podman уже заходит в чат с rootless-режимом и без демона. Знать альтернативы - это круто.
🧠 Docker - это не магия, а правила + безопасность. Сохрани и следуй им - и опсы не будут шептать за твоей спиной заговорщиками.
🤬 Хватит гадать, почему всё падает! На курсе учим Docker и безопасность так, чтобы твои контейнеры взлетали с первого раза - даже если вокруг новые CVE и саботаж.
🔨 Бесплатный вводный урок - твой шанс подружиться с Docker без слёз и испорченного настроения опсов.
#DevOps #Docker
