Spaces:
Paused
Paused
File size: 572 Bytes
b7a39fa | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | FROM node:18-alpine
# 安装必要的工具
RUN apk add --no-cache curl bash
WORKDIR /app
# 复制 package.json 并安装依赖
COPY package*.json ./
RUN npm install --production
# 全局安装 PM2
RUN npm install -g pm2
# 复制应用代码
COPY . .
# 创建必要的目录
RUN mkdir -p /app/tmp && chmod 777 /app/tmp
# 暴露端口
EXPOSE 7860 3000
# 健康检查
HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
CMD curl -f http://localhost:3000/ || exit 1
# 使用 PM2 作为进程管理器
CMD ["pm2-runtime", "start", "index.js"] |