build(docker): build frontend and server inside container; remove host build deps

This commit is contained in:
Chenwei Jiang 2025-08-21 16:47:05 +08:00
parent 11104dbf29
commit 7591f001c1
Signed by: cheverjohn
GPG key ID: ADC4815BFE960182
6 changed files with 75 additions and 43 deletions

View file

@ -24,20 +24,12 @@ fi
echo "- 宿主机: ${HOST_OS}/${HOST_ARCH}"
echo "- 容器镜像平台: ${DOCKER_PLATFORM} (Docker 仅支持 linux/*;可通过 DOCKER_PLATFORM 覆盖)"
echo "- 将使用外部构建的前端 (dist/)"
echo "- 在容器内编译前端与后端"
SCRIPT_DIR=$(cd "$(dirname "$0")" && pwd)
ROOT_DIR=$(cd "$SCRIPT_DIR/.." && pwd)
if [ ! -d "$ROOT_DIR/node_modules" ]; then
echo "[提示] 未检测到 node_modules将安装依赖 (pnpm install)"
(cd "$ROOT_DIR" && pnpm install)
fi
if [ ! -d "$ROOT_DIR/dist" ]; then
echo "[提示] 未检测到 dist/,将进行前端构建 (pnpm build)"
(cd "$ROOT_DIR" && pnpm run build)
fi
# 不再依赖宿主机 node_modules 或 dist全部在容器内完成
echo "[步骤] 启动 Docker Compose (开发)"
(cd "$ROOT_DIR/docker" && DOCKER_PLATFORM=${DOCKER_PLATFORM} docker compose -f docker-compose.dev.yml up -d --build)