Windows用户:
双击运行 start.bat
Linux/Mac用户:
chmod +x start.sh
./start.sh
npm run install:all
npm run dev
# 构建前端
cd client
npm run build
# 构建后端
cd ../server
npm run build
# 在server目录下
npm start
# 安装PM2
npm install -g pm2
# 启动服务
pm2 start server/dist/index.js --name "hc-system"
# 查看状态
pm2 status
# 查看日志
pm2 logs hc-system
创建 Dockerfile
:
FROM node:18-alpine
WORKDIR /app
# 复制package.json文件
COPY package*.json ./
COPY server/package*.json ./server/
COPY client/package*.json ./client/
# 安装依赖
RUN npm run install:all
# 复制源代码
COPY . .
# 构建项目
RUN npm run build
RUN npm run server:build
# 暴露端口
EXPOSE 5000
# 启动服务
CMD ["npm", "start"]
构建和运行:
docker build -t hc-system .
docker run -p 5000:5000 hc-system
在 server
目录下创建 .env
文件:
PORT=5000
NODE_ENV=production
系统使用SQLite数据库,数据文件位于 server/data/hc_data.db
上传的文件存储在 server/uploads/
目录
curl http://localhost:5000/api/health
server/src/index.ts
中的端口配置PORT=其他端口
npm cache clean --force
node_modules
重新安装server/data/
目录权限server/uploads/
目录权限