FROM node:20-alpine WORKDIR /app RUN apk add --no-cache tini COPY package.json ./ RUN npm install --omit=dev COPY . . RUN chmod +x /app/scripts/*.sh \ && mkdir -p /data ENV NODE_ENV=production \ PORT=40100 \ CONFIG_PATH=/app/config/default.json \ DATABASE_PATH=/data/keeper.sqlite \ TRIGGER_SCRIPT=/scripts/cleanup.sh \ COLLECTION_PATH=/home/zenn/Collection EXPOSE 40100 ENTRYPOINT ["/sbin/tini", "--"] CMD ["node", "src/server.js"]