Files
ai/backend/Dockerfile
2025-07-21 22:12:54 +08:00

42 lines
698 B
Docker

FROM node:18-alpine3.18
# 设置工作目录
WORKDIR /app
# 安装系统依赖
RUN apk add --no-cache \
python3 \
make \
g++ \
curl \
openssl1.1-compat
# 复制 package.json 和 package-lock.json
COPY package*.json ./
# 安装依赖
RUN npm install
# 复制源代码
COPY . .
# 构建项目
RUN npm run build
# 创建非root用户
RUN addgroup -g 1001 -S nodejs
RUN adduser -S nodejs -u 1001
# 创建数据目录并更改文件所有权
RUN mkdir -p /app/data && chown -R nodejs:nodejs /app
# 更改文件所有权
USER nodejs
# 暴露端口
EXPOSE 3001
RUN npx prisma generate
# 启动命令
CMD [ "sh", "-c", "npm run db:push && npm run db:seed && npm run start" ]