mirror of
https://github.com/altstackHQ/altstack-data.git
synced 2026-04-18 00:53:14 +02:00
39 lines
650 B
Docker
39 lines
650 B
Docker
# Dockerfile for Uptime Kuma
|
|
# Stage 1: Build
|
|
FROM node:20-alpine AS builder
|
|
|
|
# Install build dependencies
|
|
RUN apk add --no-cache python3 make g++
|
|
|
|
WORKDIR /app
|
|
|
|
# Copy dependency files
|
|
COPY package.json package-lock.json ./
|
|
|
|
# Install dependencies
|
|
RUN npm ci
|
|
|
|
# Copy source
|
|
COPY . .
|
|
|
|
# Stage 2: Runtime
|
|
FROM node:20-alpine
|
|
|
|
# Create non-root user
|
|
RUN addgroup -S uptimekuma && adduser -S uptimekuma -G uptimekuma
|
|
|
|
WORKDIR /app
|
|
|
|
# Copy built assets and node_modules from builder
|
|
COPY --from=builder /app ./
|
|
|
|
# Set permissions
|
|
RUN chown -R uptimekuma:uptimekuma /app
|
|
|
|
USER uptimekuma
|
|
|
|
EXPOSE 3001
|
|
|
|
# Start Uptime Kuma
|
|
CMD ["node", "server/server.js"]
|