rwadurian/backend/services/presence-service/Dockerfile.test

38 lines
859 B
Docker

# =============================================================================
# Presence Service - Test Dockerfile
# =============================================================================
FROM node:20-alpine
# 设置工作目录
WORKDIR /app
# 安装必要的系统依赖
RUN apk add --no-cache \
openssl \
libc6-compat
# 复制 package.json 和 package-lock.json (不复制 node_modules)
COPY package*.json ./
# 安装依赖 (在容器内安装,避免平台差异)
RUN npm ci
# 复制 Prisma schema
COPY prisma ./prisma/
# 生成 Prisma Client
RUN npx prisma generate
# 复制源代码和测试代码 (忽略 node_modules)
COPY src ./src/
COPY test ./test/
COPY tsconfig*.json ./
COPY jest.config.js ./
# 设置环境变量
ENV NODE_ENV=test
# 默认命令:运行测试
CMD ["npm", "test"]