From 04ed3fb67a307c5bd5850863ead1e6e850df911d Mon Sep 17 00:00:00 2001 From: chaos Date: Tue, 17 Mar 2026 00:20:59 +0800 Subject: [PATCH] Add pre-compiled deployment support (Dockerfile.fast) and optimized build process --- Dockerfile.fast | 28 ++++++++++++++++++++++++++++ README.md | 14 ++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 Dockerfile.fast diff --git a/Dockerfile.fast b/Dockerfile.fast new file mode 100644 index 0000000..fea988f --- /dev/null +++ b/Dockerfile.fast @@ -0,0 +1,28 @@ +# 预编译生产镜像 +# 使用此镜像前请先在本地运行: npm install && npm run build + +FROM node:20-slim + +WORKDIR /app + +# 设置镜像源提高安装速度 +RUN npm config set registry https://registry.npmmirror.com + +# 只拷贝生产依赖和编译好的产物 +COPY package*.json ./ +RUN apt-get update && apt-get install -y python3 make g++ \ + && npm install --omit=dev \ + && apt-get purge -y python3 make g++ \ + && apt-get autoremove -y \ + && rm -rf /var/lib/apt/lists/* + +# 拷贝本地编译好的 build 和 static 目录 +COPY build ./build +COPY static ./static + +ENV PORT=1995 +ENV NODE_ENV=production + +EXPOSE 1995 + +CMD ["node", "build"] diff --git a/README.md b/README.md index 9692400..2b5b584 100644 --- a/README.md +++ b/README.md @@ -24,3 +24,17 @@ docker-compose up -d # 查看日志 docker-compose logs -f ``` + +### 3. 先编译后打包 (推荐:适用于性能较弱的服务器) +在本地预先编译,仅将结果推送到容器,可极大地减少部署时间。 +```bash +# 1. 本地编译 +npm install +npm run build + +# 2. 使用精简版 Dockerfile 构建 +docker build -t vox-fast -f Dockerfile.fast . + +# 3. 运行 +docker run -p 1995:1995 -v $(pwd)/data.db:/app/data.db vox-fast +```