penpot-renovate[bot] c0af48f873
⬆️ Update DHI base images (#12713)
- dhi.io/debian-base trixie-debian13-dev@cc4e05f (docker/images/Dockerfile.backend)
- dhi.io/debian-base trixie-debian13-dev@cc4e05f (docker/images/Dockerfile.backend)
- dhi.io/debian-base trixie-debian13@2664ef2 (docker/imagemagick/Dockerfile)
- dhi.io/debian-base trixie-debian13-dev@cc4e05f (docker/imagemagick/Dockerfile)
- dhi.io/debian-base trixie-debian13-dev@cc4e05f (docker/devenv/Dockerfile)
- dhi.io/nginx 1.31.8-alpine3.24@83489ce (docker/images/Dockerfile.storybook)
- dhi.io/nginx 1.31.8-debian13-dev@fbff190 (docker/images/Dockerfile.frontend)
- dhi.io/node 24.22.2@ (docker/devenv/Dockerfile)
- dhi.io/node 24.22.2@ (.nvmrc)
- dhi.io/node 24.22.2-debian13-dev@53af56f (docker/images/Dockerfile.media-processor)
- dhi.io/node 24.22.2-debian13@24fa625 (docker/images/Dockerfile.mcp)
- dhi.io/node 24.22.2-debian13-dev@53af56f (docker/images/Dockerfile.mcp)
- dhi.io/node 24.22.2-debian13-dev@53af56f (docker/images/Dockerfile.exporter)

Signed-off-by: penpot-renovate[bot] <338182062+penpot-renovate[bot]@users.noreply.github.com>
2026-10-29 15:24:22 +01:00

88 lines
2.5 KiB
Docker

FROM dhi.io/debian-base:trixie-debian13-dev@sha256:cc4e05ff415ee2d83918f2af45c737983209924ef7362c53f00cfcdaa1c94326 AS build
LABEL maintainer="Penpot <docker@penpot.app>"
ENV LANG='C.UTF-8' \
LC_ALL='C.UTF-8' \
DEBIAN_FRONTEND=noninteractive \
TZ=Etc/UTC
ARG IMAGEMAGICK_VERSION=7.1.2-32
RUN set -e; \
apt-get -qq update; \
apt-get -qqy --no-install-recommends install init-system-helpers; \
apt-get -qqy --no-install-recommends install \
autoconf \
binutils \
build-essential \
ca-certificates \
curl \
libfftw3-dev \
libheif-dev \
libjpeg-dev \
liblcms2-dev \
libltdl-dev \
liblzma-dev \
libxml2-dev \
libpng-dev \
librsvg2-dev \
libtiff-dev \
libtool \
libwebp-dev \
libzip-dev \
libzstd-dev \
pkg-config \
; \
curl -LfsSo /tmp/magick.tar.gz https://github.com/ImageMagick/ImageMagick/archive/refs/tags/${IMAGEMAGICK_VERSION}.tar.gz; \
mkdir -p /tmp/magick; \
cd /tmp/magick; \
tar -xf /tmp/magick.tar.gz --strip-components=1; \
./configure --prefix=/opt/imagick --without-openexr; \
make -j 2; \
make install; \
rm -rf /opt/imagick/lib/libMagick++*; \
rm -rf /opt/imagick/include; \
rm -rf /opt/imagick/share;
# The DHI runtime image ships no apt/dpkg, so `magick`'s ~15 runtime shared
# libs (libheif, libopenjp2, librsvg2, etc.) are vendored here via `ldd` into
# a self-contained bundle instead of relying on system packages at runtime.
RUN set -ex; \
apt-get -qqy --no-install-recommends install \
libfontconfig1 \
libfreetype6 \
libglib2.0-0 \
libgomp1 \
libheif1 \
libjpeg62-turbo \
liblcms2-2 \
libopenjp2-7 \
libpng16-16 \
librsvg2-2 \
libtiff6 \
libwebp7 \
libwebpdemux2 \
libwebpmux3 \
libxml2 \
libzip5 \
libzstd1 \
; \
mkdir -p /opt/imagick/lib/deps; \
ldd /opt/imagick/bin/magick | awk '{print $3}' | grep '^/' | sort -u \
| xargs -I{} cp -L --no-clobber {} /opt/imagick/lib/deps/; \
apt-get -qqy clean; \
rm -rf /var/lib/apt/lists/*
FROM dhi.io/debian-base:trixie-debian13@sha256:2664ef25f3f63f5545a121a6a4676bf70da18df2bcadece1a913d6daaa19fdfb AS image
LABEL maintainer="Penpot <docker@penpot.app>"
ENV LANG='C.UTF-8' \
LC_ALL='C.UTF-8' \
TZ=Etc/UTC \
LD_LIBRARY_PATH=/opt/imagick/lib/deps
COPY --from=build /opt/imagick /opt/imagick
ENTRYPOINT ["/opt/imagick/bin/magick"]