2022-05-01 09:02:25 +02:00
|
|
|
FROM library/node:18-alpine
|
2017-06-02 17:09:38 +02:00
|
|
|
|
2018-02-24 10:08:54 +01:00
|
|
|
RUN apk update \
|
2021-09-15 21:13:00 +02:00
|
|
|
&& apk add bash python3 make curl g++ shadow git
|
2021-08-09 01:08:23 +02:00
|
|
|
|
|
|
|
RUN groupdel dialout
|
2017-06-02 17:09:38 +02:00
|
|
|
|
2022-10-07 23:29:57 +02:00
|
|
|
RUN mkdir -p /data/frontend/node_modules /data/translations /data/web/static \
|
2018-02-24 10:08:54 +01:00
|
|
|
&& chown -R node:node /data
|
|
|
|
|
2021-08-05 08:31:51 +02:00
|
|
|
RUN USER=node && \
|
|
|
|
GROUP=node && \
|
|
|
|
curl -SsL https://github.com/boxboat/fixuid/releases/download/v0.5.1/fixuid-0.5.1-linux-amd64.tar.gz | tar -C /usr/local/bin -xzf - && \
|
|
|
|
chown root:root /usr/local/bin/fixuid && \
|
|
|
|
chmod 4755 /usr/local/bin/fixuid && \
|
|
|
|
mkdir -p /etc/fixuid && \
|
2021-08-09 01:08:23 +02:00
|
|
|
printf "user: $USER\ngroup: $GROUP\npaths:\n - /\n - /data/frontend/node_modules\n" > /etc/fixuid/config.yml
|
2017-09-19 12:19:14 +02:00
|
|
|
|
2022-04-27 19:50:39 +02:00
|
|
|
COPY ./entrypoint.sh /
|
|
|
|
RUN chmod a+x /entrypoint.sh
|
|
|
|
|
2018-02-24 10:08:54 +01:00
|
|
|
# Define working directory.
|
2020-01-09 03:25:38 +01:00
|
|
|
WORKDIR /data/frontend
|
2017-09-19 12:19:14 +02:00
|
|
|
|
2018-02-24 10:08:54 +01:00
|
|
|
# Define working user.
|
2021-08-05 08:31:51 +02:00
|
|
|
USER node:node
|
2017-06-02 17:09:38 +02:00
|
|
|
|
2020-01-09 03:25:38 +01:00
|
|
|
VOLUME /data/frontend/node_modules
|
2018-10-11 09:04:09 +02:00
|
|
|
|
2021-10-02 02:54:51 +02:00
|
|
|
ENV NODE_ENV=production
|
2022-05-17 19:27:30 +02:00
|
|
|
ENV HOME=/home/node
|
2021-10-02 02:54:51 +02:00
|
|
|
|
2017-06-02 17:09:38 +02:00
|
|
|
# Define default command.
|
2022-04-27 19:50:39 +02:00
|
|
|
ENTRYPOINT ["/entrypoint.sh"]
|
|
|
|
CMD ["bash"]
|