Files
WhatIDo/Dockerfile
T

20 lines
653 B
Docker

FROM node:20-alpine
ENV TZ=Europe/Moscow
WORKDIR /app
COPY package.json package-lock.json* ./
RUN npm install --omit=dev
COPY . .
RUN mkdir -p uploads certs
RUN set -e; \
i=1; \
until apk add --no-cache openssl; do \
echo "apk add failed on attempt $i, retrying in 5s..."; \
i=$((i+1)); \
if [ $i -gt 6 ]; then echo "apk add failed after 6 attempts"; exit 1; fi; \
sleep 5; \
done && \
openssl req -x509 -nodes -newkey rsa:2048 -days 3650 \
-keyout certs/key.pem -out certs/cert.pem \
-subj "/CN=whatido.local" -addext "subjectAltName=DNS:localhost,IP:127.0.0.1"
EXPOSE 3003 3443
CMD ["node", "server.js"]