ImageMagick + Docker = ❤️

Раз в месяц мне нужно конвертировать многостраничные PDF-чеки из интернет-банкинга в несколько картинок, чтобы переслать их арендодателю в мессенджере (ну не напрягать же PDFками!). А ещё иногда развлекаюсь с SVG и возникает необходимость генерировать несколько растров из одного вектора. Кстати, никогда не понимал, почему Android-разработчики рисуют ассеты в нескольких размерах, изобретают собственные форматы и просто страдают вместо использования SVG. И не надо говорить про эффективность, уж 4-х ядерный двухгигагерцовый Snapdragon с Adreno смог бы отрисовать жалкую иконку.

Поэтому я накидал небольшой Docker-образок с ImageMagick внутри.

В принципе, всё бы ничего и так: ставишь пару пакетов из реп и можно жить, но хотелось бы решения, которое:

  • не гадило бы в систему пакетами, которые требуются один раз в жизни для какого-нибудь хитрого формата (типа *.JNG — JPEG с поддержкой прозрачности «как в PNG»)

  • содержало бы всё необходимое сразу

  • было бы CLI-friendly

  • можно было бы использовать на сервере, например в CI

Ну и кажется, сейчас для такого модно использовать Docker.

Я завернул все нужные тулзы в популярный нынче минималистичный дистр, запаблишил сорцы на GitHub, настроил automated build и voila! — по каждому пушу, через пару минут, у меня готов блобчик на 30 метров со всем нужным стафом. Могу использовать его локально или с любой машины с Docker на борту. Могу снести весь шлак из системы. Могу внедрить в билд.