FROM node:20-alpine

RUN apk add --no-cache python3 make g++

WORKDIR /app

COPY package*.json ./
RUN npm ci --omit=dev && npm rebuild better-sqlite3 --build-from-source

COPY . .

RUN mkdir -p data signed-contracts contracts

EXPOSE 3001

CMD ["node", "server.js"]
