1
Fork 0
ci-images/images/node-script/Dockerfile

49 lines
1.4 KiB
Docker

FROM node:20.17.0-slim
# renovate: datasource=npm packageName=npm versioning=npm
ARG NPM_VERSION=10.9.0
# renovate: datasource=npm packageName=bluebird versioning=npm
ARG BLUEBIRD_VERSION=3.7.2
# renovate: datasource=npm packageName=lodash versioning=npm
ARG LODASH_VERSION=4.17.21
# renovate: datasource=npm packageName=moment versioning=npm
ARG MOMENT_VERSION=2.30.1
# renovate: datasource=npm packageName=shelljs versioning=npm
ARG SHELLJS_VERSION=0.8.5
# renovate: datasource=npm packageName=js-yaml versioning=npm
ARG JS_YAML_VERSION=4.1.0
# renovate: datasource=npm packageName=got versioning=npm
ARG GOT_VERSION=14.4.3
RUN set -e; \
rm -r \
/var/log/* \
/usr/local/share/doc/* \
/usr/local/share/man/* \
/usr/share/doc/* \
/usr/share/man/* \
; \
# No need for root access for a script runner
useradd -m -d /home/runner -s /bin/bash runner;
WORKDIR /home/runner
USER runner
ENV NODE_ENV=production
ENV NPM_CONFIG_PREFIX=/home/runner/.npm-global
ENV PATH=/home/runner/.npm-global/bin:$PATH
RUN set -e; \
npm install --global --audit=false \
npm@${NPM_VERSION} \
bluebird@${BLUEBIRD_VERSION} \
lodash@${LODASH_VERSION} \
moment@${MOMENT_VERSION} \
shelljs@${SHELLJS_VERSION} \
js-yaml@${JS_YAML_VERSION} \
got@${GOT_VERSION} \
; \
rm -r \
/home/runner/.npm/_cacache \
/home/runner/.npm/_logs \
;