diff --git a/.nvmrc b/.nvmrc index e44a38e..0e9dc6b 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -v18.12.1 +v18.13.0 diff --git a/Dockerfile b/Dockerfile index f76a887..1370784 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,7 @@ -FROM satantime/puppeteer-node:18.12.1-slim +FROM satantime/puppeteer-node:18.13.0-slim # Create app directory WORKDIR /usr/src/app - RUN mkdir -p /usr/src/app/Downloads ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true @@ -14,28 +13,22 @@ RUN apt update -qq \ && apt install -qq -y --no-install-recommends \ chromium \ dumb-init \ - # To run Headful mode, you will need to have a display, which is not present in a server. - # To avoid this, we will use Xvfb, and create a fake display, so the chrome will think there is a display and run properly. - # So we just need to install Xvfb and Puppeteer related dependencies. - x11vnc x11-xkb-utils xfonts-100dpi xfonts-75dpi xfonts-scalable xfonts-cyrillic x11-apps xvfb xauth\ + # To run Headful mode we just need to install Xvfb and Puppeteer related dependencies. + xfonts-100dpi xfonts-75dpi xfonts-scalable xfonts-cyrillic \ + xvfb xauth\ && rm -rf /var/lib/apt/lists/* \ && rm -rf /src/*.deb # Install app dependencies COPY package*.json ./ - RUN yarn install --frozen-lockfile --production && yarn cache clean COPY ./tsconfig.json ./tsconfig.json - COPY ./src ./src - RUN yarn build VOLUME /storage - ENV DATA_PATH="/storage" -# We run a fake display and run our script. -# Start script on Xvfb +# We run a fake display and run our script using Xvfb CMD xvfb-run --server-args="-screen 0 1024x768x24" yarn start \ No newline at end of file diff --git a/package.json b/package.json index 7f0f30f..c991222 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "license": "AGPL-3.0", "type": "module", "engines": { - "node": "v18.12.1" + "node": ">=18.12.1" }, "scripts": { "build": "rm -f tsconfig.tsbuildinfo && npx tsc",