diff --git a/BillNote_frontend/vite.config.ts b/BillNote_frontend/vite.config.ts index f598a69..f45db1b 100644 --- a/BillNote_frontend/vite.config.ts +++ b/BillNote_frontend/vite.config.ts @@ -8,7 +8,9 @@ const __dirname = path.dirname(fileURLToPath(import.meta.url)) // https://vitejs.dev/config/ export default defineConfig(({ mode }) => { - const env = loadEnv(mode, process.cwd() + '/../') + // 在 Docker 环境中,父目录可能没有 .env 文件,使用当前目录 + const envDir = process.env.DOCKER_BUILD ? __dirname : path.resolve(__dirname, '../') + const env = loadEnv(mode, envDir) const apiBaseUrl = env.VITE_API_BASE_URL || 'http://127.0.0.1:8483' const port = parseInt(env.VITE_FRONTEND_PORT || '3015', 10) diff --git a/Dockerfile.complete b/Dockerfile.complete index 349d84e..277efc6 100644 --- a/Dockerfile.complete +++ b/Dockerfile.complete @@ -36,10 +36,10 @@ WORKDIR /tmp/frontend COPY ./BillNote_frontend/package.json ./ RUN pnpm install -# 复制 .env.example 到父目录,供 vite.config.ts 使用 -COPY ./.env.example /tmp/.env - COPY ./BillNote_frontend /tmp/frontend + +# 设置环境变量,告诉 vite.config.ts 这是 Docker 构建 +ENV DOCKER_BUILD=1 RUN pnpm run build # === 阶段3:完整应用镜像 ===