Many dependencies are installed manually within the Dockerfiles, where Renovate cannot determine the version numbers by default. However, through custom matching, the corresponding data sources can be invoked, and the version number replaced via regex.
46 lines
1.3 KiB
Docker
46 lines
1.3 KiB
Docker
FROM node:20.17.0-slim
|
|
|
|
# renovate: datasource=npm packageName=npm
|
|
ARG NPM_VERSION=10.5.0
|
|
# renovate: datasource=npm packageName=bluebird
|
|
ARG BLUEBIRD_VERSION=3.7.2
|
|
# renovate: datasource=npm packageName=lodash
|
|
ARG LODASH_VERSION=4.17.21
|
|
# renovate: datasource=npm packageName=moment
|
|
ARG MOMENT_VERSION=2.30.1
|
|
# renovate: datasource=npm packageName=shelljs
|
|
ARG SHELLJS_VERSION=0.8.5
|
|
# renovate: datasource=npm packageName=js-yaml
|
|
ARG JS_YAML_VERSION=4.1.0
|
|
# renovate: datasource=npm packageName=got
|
|
ARG GOT_VERSION=14.4.2
|
|
|
|
# No need for root access for a script runner
|
|
RUN 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 \
|
|
/var/log/* \
|
|
/usr/local/share/doc/* \
|
|
/usr/local/share/man/* \
|
|
/usr/share/doc/* \
|
|
/usr/share/man/* \
|
|
/tmp/* \
|
|
;
|