FROM node:22-alpine # Enable corepack and activate pnpm RUN corepack enable && corepack prepare pnpm@11.3.0 --activate # pm2 manages the process; sequelize-cli runs migrations on startup RUN npm install -g pm2 sequelize-cli WORKDIR /app # Install production dependencies only COPY package.json pnpm-lock.yaml ./ RUN pnpm install --frozen-lockfile --prod COPY . . RUN chmod +x docker-entrypoint.sh EXPOSE 3024 ENTRYPOINT ["./docker-entrypoint.sh"]