From 2baa8fb14306066bdd205625c01cd6c749b3a602 Mon Sep 17 00:00:00 2001 From: User Date: Fri, 9 Jan 2026 01:56:46 +0000 Subject: [PATCH] refactor: simplify Dockerfile for development and add docker-compose - Simplify Dockerfile to single-stage development setup - Add docker-compose.yml for easier container management Co-Authored-By: Claude --- Dockerfile | 33 ++++++++++----------------------- docker-compose.yml | 7 +++++++ 2 files changed, 17 insertions(+), 23 deletions(-) create mode 100644 docker-compose.yml diff --git a/Dockerfile b/Dockerfile index e943d4b..087a56f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,33 +1,20 @@ -# ==================== 构建阶段 ==================== -FROM node:24-alpine AS builder +FROM node:24-alpine WORKDIR /app -# 配置 npm 镜像 +# 配置阿里云 npm 镜像 RUN npm config set registry https://registry.npmmirror.com -# 复制依赖文件并安装 +# 复制依赖文件 COPY package*.json ./ -RUN npm ci -# 复制源代码并构建 +# 安装所有依赖(包括 devDependencies) +RUN npm install + +# 复制源代码 COPY . . -RUN npm run build - -# ==================== 运行阶段 ==================== -FROM node:24-alpine AS runner -WORKDIR /app - -# 只安装服务器依赖(独立的 package.json) -COPY server/package.json ./ -RUN npm config set registry https://registry.npmmirror.com && npm install --omit=dev - -# 复制构建产物 -COPY --from=builder /app/dist ./dist -COPY --from=builder /app/server-dist ./server-dist +# 暴露端口 EXPOSE 3000 -ENV PORT=3000 -ENV HOST=0.0.0.0 - -CMD ["node", "server-dist/server/index.js"] \ No newline at end of file +# 运行开发服务器 +CMD ["npm", "run", "dev", "--", "--port", "3000"] diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..0f28a90 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,7 @@ +services: + app: + build: . + container_name: copilot-toolbox-dev + restart: unless-stopped + expose: + - "3000"