Absorbs the separate control-panel git repo as a subdirectory. Instances and backups directories excluded via .gitignore. Bunker Admin
21 lines
390 B
Docker
21 lines
390 B
Docker
FROM node:20-alpine
|
|
|
|
# Install Docker CLI (needed to manage instance containers) + rsync (for provisioning)
|
|
RUN apk add --no-cache docker-cli docker-cli-compose rsync
|
|
|
|
WORKDIR /app
|
|
|
|
# Install dependencies
|
|
COPY api/package.json api/package-lock.json ./
|
|
RUN npm ci
|
|
|
|
# Copy source
|
|
COPY api/ .
|
|
|
|
# Generate Prisma client
|
|
RUN npx prisma generate
|
|
|
|
EXPOSE 5000
|
|
|
|
CMD ["npx", "tsx", "src/server.ts"]
|