Files
admin/dashboard/backend/Dockerfile
T
2026-07-30 13:56:31 +08:00

33 lines
730 B
Docker

FROM node:22-alpine
# 统一时区为东八区
ENV TZ=Asia/Shanghai
RUN apk add --no-cache tzdata && \
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
echo "Asia/Shanghai" > /etc/timezone
WORKDIR /app
# Create logs directory
RUN mkdir -p /app/logs
# Install dependencies (including devDependencies for build)
COPY package.json pnpm-lock.yaml ./
RUN corepack enable pnpm && pnpm install --frozen-lockfile
# Copy application code
COPY tsconfig.json drizzle.config.ts ./
COPY src/ ./src/
# Build TypeScript → dist/
RUN pnpm build
# Remove devDependencies after build
RUN pnpm prune --prod
# Expose port
EXPOSE 8000
# Run the compiled application
CMD ["node", "--conditions", "@zod/source", "dist/app.js"]