FROM node:22-alpine # Build-Kontext ist das Repository-Wurzelverzeichnis (siehe deploy.sh), weil # readin und readarchive sich die Module unter common/ teilen. Das Layout im # Image spiegelt das Repository, damit die relativen Importe (../common/...) # unveraendert funktionieren. ADD readin/package.json /tmp/package.json ADD readin/package-lock.json /tmp/package-lock.json RUN cd /tmp && npm ci RUN mkdir -p /opt/app && cp -a /tmp/node_modules /tmp/package.json /opt/app/ ADD common/*.js /opt/app/common/ ADD readin/*.js /opt/app/readin/ ADD readin/package.json readin/crontab.tmp /opt/app/readin/ WORKDIR /opt/app/readin RUN mkdir -p data #RUN apk add busybox-initscripts #RUN apk add --no-cache tzdata #ENV TZ Europe/Berlin #RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone RUN crontab crontab.tmp RUN deluser --remove-home node RUN touch cmds.sh \ && echo 'crond -f' >>cmds.sh CMD sh ./cmds.sh