# This file was auto-generated, do not edit it directly. # Instead run bin/update_build_scripts from # https://github.com/overleaf/internal/ FROM node:24.14.1 AS base WORKDIR /overleaf/services/clsi ENV PATH="/overleaf/node_modules/.bin:$PATH" RUN corepack enable COPY services/clsi/install_deps.sh /overleaf/services/clsi/ RUN chmod 0755 ./install_deps.sh && ./install_deps.sh ENTRYPOINT ["/bin/sh", "/entrypoint.sh"] COPY services/clsi/entrypoint.sh / # Google Cloud Storage needs a writable $HOME/.config for resumable uploads # (see https://googleapis.dev/nodejs/storage/latest/File.html#createWriteStream) RUN mkdir /home/node/.config && chown node:node /home/node/.config FROM base AS app COPY package.json yarn.lock .yarnrc.yml /overleaf/ COPY libraries/fetch-utils/package.json /overleaf/libraries/fetch-utils/package.json COPY libraries/logger/package.json /overleaf/libraries/logger/package.json COPY libraries/metrics/package.json /overleaf/libraries/metrics/package.json COPY libraries/o-error/package.json /overleaf/libraries/o-error/package.json COPY libraries/overleaf-editor-core/package.json /overleaf/libraries/overleaf-editor-core/package.json COPY libraries/promise-utils/package.json /overleaf/libraries/promise-utils/package.json COPY libraries/settings/package.json /overleaf/libraries/settings/package.json COPY libraries/stream-utils/package.json /overleaf/libraries/stream-utils/package.json COPY services/clsi/package.json /overleaf/services/clsi/package.json COPY .yarn/patches/ /overleaf/.yarn/patches/ RUN cd /overleaf && yarn workspaces focus @overleaf/clsi overleaf COPY libraries/fetch-utils/ /overleaf/libraries/fetch-utils/ COPY libraries/logger/ /overleaf/libraries/logger/ COPY libraries/metrics/ /overleaf/libraries/metrics/ COPY libraries/o-error/ /overleaf/libraries/o-error/ COPY libraries/overleaf-editor-core/ /overleaf/libraries/overleaf-editor-core/ COPY libraries/promise-utils/ /overleaf/libraries/promise-utils/ COPY libraries/settings/ /overleaf/libraries/settings/ COPY libraries/stream-utils/ /overleaf/libraries/stream-utils/ COPY services/clsi/ /overleaf/services/clsi/ FROM app AS with-texlive RUN apt-get update \ && apt-cache depends texlive-full | grep "Depends: " | grep -v -- "-doc" | grep -v -- "-lang-" | sed 's/Depends: //' | xargs apt-get install -y --no-install-recommends \ && apt-get install -y --no-install-recommends fontconfig inkscape python3-pygments qpdf \ && rm -rf /var/lib/apt/lists/* RUN mkdir -p cache compiles output \ && chown node:node cache compiles output CMD ["node", "--expose-gc", "app.js"] FROM app RUN mkdir -p cache compiles output \ && chown node:node cache compiles output CMD ["node", "--expose-gc", "app.js"]