Флаг: English English Флаг: Español Español

Ci

12.01.2026

Написать Dockerfile просто: FROM node, COPY ., CMD run. Это работает, и для локальных тестов этого часто достаточно. Но когда такой образ попадает в CI/CD или, не дай бог, в продакшн, начинаются проблемы: сборка длится вечность, образ весит гигабайты, а безопасники хватаются за голову.

Разница между «работает» и «работает правильно» колоссальна. Давайте разберем четыре уровня оптимизации, которые отделяют любительскую поделку от надежного инженерного решения.


1. Фундамент: Выбор образа и детерминизм

Всё начинается с инструкции FROM. Многие по привычке берут полные образы (например, стандартную ubuntu или python:3.9), не задумываясь о последствиях.

Читать далее
30.12.2025

При работе с реальными проектами (смена CDN, миграция, рефакторинг) часто нужно массово заменить один URL на другой.

На первый взгляд задача кажется тривиальной: sed -i 's|old|new|g' **/* — и готово.

В реальности такой подход — это русская рулетка.

Неосторожная замена приводит к:

  • 💀 Повреждению бинарных файлов (images, pdf, archives);
  • 📉 Мусору в git-истории (бинарники помечаются как изменённые);
  • 🚫 Невозможности чистого отката, если бэкап не был сделан.

В этой заметке разберём production-grade алгоритм: меняем только текст, не трогаем бинарники, делаем точечный бэкап.

Читать далее
23.12.2025

В последние десять лет индустрия развёртывания веб-приложений прошла путь от FTP-скриптов и rsync до сложнейших систем оркестрации. Сегодня разработчики и небольшие команды всё чаще оказываются перед непростым выбором:

  • либо платить серьёзную наценку за удобство PaaS-платформ (Heroku, Render, Fly.io),
  • либо погружаться в когнитивную и операционную сложность Kubernetes.

Kamal предлагает третий путь: удобство современных облачных сервисов — на вашем собственном сервере.


Что такое Kamal

Kamal — это open-source CLI-инструмент от компании 37signals (создателей Basecamp и Ruby on Rails), предназначенный для деплоя веб-приложений поверх Docker без Kubernetes.

Читать далее
21.11.2025

Переезд в облако или смена провайдера — это всегда операция на открытом сердце. Инженеру нужно решить массу вопросов: как перенести терабайты данных с минимальным простоем? Как конвертировать схему? Как настроить CDC (Change Data Capture), чтобы не потерять ни одной транзакции во время переключения?

У каждого крупного облачного провайдера есть свой ответ. Подходы кардинально разные: кто-то даёт просто «трубу» для данных, кто-то — полноценный ETL-комбайн, кто-то делает миграцию serverless и максимально беспроблемной.

Читать далее