From bb989bd80ffd754dc3fb43d7255d1f6acd8817b2 Mon Sep 17 00:00:00 2001 From: Developer Date: Tue, 2 Dec 2025 07:16:20 -0800 Subject: [PATCH] =?UTF-8?q?fix(reward-service):=20=E4=BF=AE=E5=A4=8D=20Doc?= =?UTF-8?q?kerfile=20=E4=BD=BF=E7=94=A8=20Debian=20slim=20=E5=92=8C?= =?UTF-8?q?=E6=AD=A3=E7=A1=AE=E7=9A=84=20CMD=20=E8=B7=AF=E5=BE=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Builder 阶段从 node:20-alpine 改为 node:20-slim - 修复 CMD 路径从 dist/main.js 改为 dist/src/main.js - 添加构建输出验证步骤 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- backend/services/reward-service/Dockerfile | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/backend/services/reward-service/Dockerfile b/backend/services/reward-service/Dockerfile index dbd506d3..9ed9412e 100644 --- a/backend/services/reward-service/Dockerfile +++ b/backend/services/reward-service/Dockerfile @@ -2,11 +2,16 @@ # Reward Service Dockerfile # ============================================================================= -# Build stage -FROM node:20-alpine AS builder +# Build stage - use Debian slim for better Prisma compatibility +FROM node:20-slim AS builder WORKDIR /app +# Install OpenSSL for Prisma +RUN apt-get update && apt-get install -y --no-install-recommends \ + openssl \ + && rm -rf /var/lib/apt/lists/* + # Copy package files COPY package*.json ./ COPY tsconfig*.json ./ @@ -26,7 +31,7 @@ COPY src ./src RUN npm run build # Verify build output exists -RUN ls -la dist/ && test -f dist/main.js +RUN ls -la dist/src/ && test -f dist/src/main.js # Production stage - use Debian slim for OpenSSL compatibility FROM node:20-slim @@ -67,4 +72,4 @@ HEALTHCHECK --interval=30s --timeout=3s --start-period=40s --retries=3 \ CMD wget -q --spider http://localhost:3005/health || exit 1 # Start service -CMD ["node", "dist/main.js"] +CMD ["node", "dist/src/main.js"]