Revisit exporter docker image dependencies

And remove cache for not include unnecessary files on
the docker image.
This commit is contained in:
Andrey Antukh 2025-06-17 11:01:23 +02:00
parent 50e9816526
commit 3f40a830fd

View file

@ -3,7 +3,7 @@ LABEL maintainer="Penpot <docker@penpot.app>"
ENV LANG=en_US.UTF-8 \ ENV LANG=en_US.UTF-8 \
LC_ALL=en_US.UTF-8 \ LC_ALL=en_US.UTF-8 \
NODE_VERSION=v20.11.1 \ NODE_VERSION=v22.16.0 \
DEBIAN_FRONTEND=noninteractive \ DEBIAN_FRONTEND=noninteractive \
PATH=/opt/node/bin:$PATH PATH=/opt/node/bin:$PATH
@ -17,56 +17,50 @@ RUN set -ex; \
tzdata \ tzdata \
locales \ locales \
ca-certificates \ ca-certificates \
fontconfig \
xz-utils \
; \ ; \
rm -rf /var/lib/apt/lists/*; \ rm -rf /var/lib/apt/lists/*; \
echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen; \ echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen; \
locale-gen; locale-gen; \
find /usr/share/i18n/locales/ -type f ! -name "en_US" ! -name "POSIX" ! -name "C" -delete;
RUN set -ex; \ RUN set -ex; \
apt-get -qq update; \ apt-get -qq update; \
apt-get -qqy install \ apt-get -qqy install \
imagemagick \ \
ghostscript \ xvfb \
netpbm \ fonts-noto-color-emoji \
poppler-utils \ fonts-unifont \
potrace \
dconf-service \
libasound2t64 \
libatk1.0-0 \
libatk-bridge2.0-0 \
libatomic1 \
libcairo2 \
libcups2 \
libdbus-1-3 \
libexpat1 \
libfontconfig1 \ libfontconfig1 \
libgcc1 \ libfreetype6 \
libgdk-pixbuf2.0-0 \ xfonts-cyrillic \
libglib2.0-0 \ xfonts-scalable \
libgtk-3-0 \ fonts-liberation \
fonts-ipafont-gothic \
fonts-wqy-zenhei \
fonts-tlwg-loma-otf \
fonts-freefont-ttf \
\
libasound2t64 \
libatk-bridge2.0-0t64 \
libatk1.0-0t64 \
libatspi2.0-0t64 \
libcairo2 \
libcups2t64 \
libdbus-1-3 \
libdrm2 \
libgbm1 \
libglib2.0-0t64 \
libnspr4 \ libnspr4 \
libnss3 \
libpango-1.0-0 \ libpango-1.0-0 \
libpangocairo-1.0-0 \
libx11-6 \ libx11-6 \
libx11-xcb1 \
libxcb1 \ libxcb1 \
libxcb-dri3-0 \
libxcomposite1 \ libxcomposite1 \
libxcursor1 \
libxdamage1 \ libxdamage1 \
libxext6 \ libxext6 \
libxfixes3 \ libxfixes3 \
libxi6 \ libxkbcommon0 \
libxrandr2 \ libxrandr2 \
libxrender1 \
libxshmfence1 \
libxss1 \
libxtst6 \
fonts-liberation \
libnss3 \
libgbm1 \
; \ ; \
rm -rf /var/lib/apt/lists/*; rm -rf /var/lib/apt/lists/*;
@ -89,8 +83,8 @@ RUN set -eux; \
cd /opt/node; \ cd /opt/node; \
tar -xf /tmp/nodejs.tar.gz --strip-components=1; \ tar -xf /tmp/nodejs.tar.gz --strip-components=1; \
chown -R root /opt/node; \ chown -R root /opt/node; \
corepack enable; \
rm -rf /tmp/nodejs.tar.gz; \ rm -rf /tmp/nodejs.tar.gz; \
corepack enable; \
mkdir -p /opt/penpot; \ mkdir -p /opt/penpot; \
chown -R penpot:penpot /opt/penpot; chown -R penpot:penpot /opt/penpot;
@ -100,7 +94,9 @@ WORKDIR /opt/penpot/exporter
USER penpot:penpot USER penpot:penpot
RUN set -ex; \ RUN set -ex; \
corepack install; \
yarn install; \ yarn install; \
yarn run playwright install chromium; yarn run playwright install chromium; \
rm -rf /opt/penpot/.yarn
CMD ["node", "app.js"] CMD ["node", "app.js"]