FROM node:20-bullseye as base ENV TZ Europe/Madrid ARG DEBIAN_FRONTEND=noninteractive # Puppeteer RUN apt-get update \ && apt-get install -y --no-install-recommends \ gnupg2 \ graphicsmagick \ libfontconfig lftp xvfb gconf-service libasound2 libatk1.0-0 libc6 \ libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgbm1 \ libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 \ libnspr4 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 \ libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 \ libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 \ fonts-liberation libappindicator1 libnss3 lsb-release xdg-utils wget # Extra dependencies RUN apt-get update \ && apt-get install -y --no-install-recommends \ samba-common-bin samba-dsdb-modules\ && rm -rf /var/lib/apt/lists/* RUN npm i -g gulp-cli WORKDIR /salix COPY print/package.json print/package-lock.json print/ COPY loopback/package.json loopback/ COPY package.json package-lock.json ./ COPY gulpfile.js ./ COPY \ LICENSE \ README.md \ ./ FROM base AS local WORKDIR /salix RUN cd ./print && npx puppeteer browsers install chrome CMD ["npx", "gulp", "backWatch"] FROM base AS test WORKDIR /salix RUN cd ./print && npx puppeteer browsers install chrome COPY loopback/common loopback/common RUN npm i COPY loopback/server loopback/server COPY loopback/util loopback/util COPY storage storage COPY back back COPY print print COPY modules modules COPY loopback/locale loopback/locale CMD ["npx", "gulp", "backOnly"]