Dive (docker)

Dive: Как я нашел 800MB мусора в Docker образе и уменьшил его на 45% Docker образы имеют свойство незаметно распухать. Сегодня расскажу про инструмент, который помог мне найти почти гигабайт лишних файлов в production образе, и покажу, как использовать Dive для оптимизации ваших контейнеров. История началась с алерта Утро понедельника началось с сообщения от команды платформы: “Ваши образы занимают 40% места в registry. Можете оптимизировать?” Проверяю размеры: docker images | grep my-app my-app latest 3d4f5g6h 2 hours ago 1.82GB my-app v1.2.3 1a2b3c4d 1 week ago 1.79GB my-app v1.2.2 9z8y7x6w 2 weeks ago 1.81GB Node.js приложение весит почти 2GB? Что-то тут не так. ...

July 19, 2025

Ошибки конфигурации, которые стоили нервов (и как их избежать)

За годы работы накопилась коллекция граблей, на которые наступал я и мои коллеги. Вот топ ошибок конфигурации, которые заставляли тратить часы на дебаг, хотя исправление занимало 30 секунд. 1. Кавычки в переменных окружения Было: # .env файл DATABASE_URL="postgresql://user:pass@localhost/db" API_KEY='super-secret-key' Проблема: Node.js приложение читает переменные вместе с кавычками. База не подключается, API возвращает 401. Решение: # .env файл - БЕЗ кавычек! DATABASE_URL=postgresql://user:pass@localhost/db API_KEY=super-secret-key Урок: В .env файлах кавычки НЕ нужны (если это не Docker Compose). ...

July 16, 2025

Первый пост

🚀 Привет! Добро пожаловать в мой уголок DevOps! Меня зовут Сергей, и я DevOps инженер, который каждый день сталкивается с тем же, с чем и вы: упавшими продами в пятницу вечером, загадочными ошибками в CI/CD, и вечным вопросом “а почему оно работает на моей машине?” Зачем еще один блог о DevOps? Когда я начинал свой путь в DevOps, мне катастрофически не хватало реальных историй из практики. Везде были либо сухие мануалы, либо статьи уровня “как установить Docker” без объяснения, зачем он вообще нужен. А хотелось читать про то, как люди реально работают, какие грабли собирают и как их обходят. ...

July 15, 2025