File size: 510 Bytes
e1d8498
 
 
 
 
 
 
d1c780a
 
 
e1d8498
 
 
 
 
 
 
 
 
d1c780a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
FROM node:20-alpine AS base
WORKDIR /app

# Install build dependencies for better-sqlite3
RUN apk add --no-cache python3 make g++ curl

COPY package*.json ./
# BUG FIX: --only=production was deprecated in npm v7 and removed in npm v10
# (shipped with Node 20).  Use --omit=dev instead.
RUN npm ci --omit=dev

COPY src/ ./src/

RUN mkdir -p /app/data

EXPOSE 3001
HEALTHCHECK --interval=30s --timeout=5s --start-period=10s \
  CMD curl -f http://localhost:3001/api/health || exit 1

CMD ["node", "src/index.js"]