28 lines
446 B
Docker
28 lines
446 B
Docker
FROM node:20-alpine
|
|
|
|
# 安装OpenSSL
|
|
RUN apk add --no-cache openssl openssl-dev
|
|
|
|
WORKDIR /app
|
|
|
|
# 安装依赖
|
|
COPY package*.json ./
|
|
RUN npm install --registry=https://registry.npmmirror.com
|
|
|
|
# 复制源代码
|
|
COPY . .
|
|
|
|
# 生成Prisma客户端
|
|
RUN npx prisma generate
|
|
|
|
# 构建TypeScript
|
|
RUN npm run build
|
|
|
|
# 创建uploads目录
|
|
RUN mkdir -p uploads
|
|
|
|
EXPOSE 3000
|
|
|
|
# 启动脚本
|
|
CMD ["sh", "-c", "npx prisma migrate deploy && node dist/index.js"]
|