40 lines
1.0 KiB
Bash
Executable File
40 lines
1.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
||
set -euo pipefail
|
||
|
||
PROJECT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||
cd "${PROJECT_DIR}"
|
||
|
||
if ! command -v docker >/dev/null 2>&1; then
|
||
echo "未检测到 docker,请先安装 Docker Desktop 或 Docker Engine。"
|
||
exit 1
|
||
fi
|
||
|
||
if ! docker info >/dev/null 2>&1; then
|
||
echo "Docker 未启动,请先启动后重试。"
|
||
exit 1
|
||
fi
|
||
|
||
if docker compose version >/dev/null 2>&1; then
|
||
COMPOSE_CMD=(docker compose)
|
||
elif command -v docker-compose >/dev/null 2>&1; then
|
||
COMPOSE_CMD=(docker-compose)
|
||
else
|
||
echo "未检测到 docker compose,请安装后重试。"
|
||
exit 1
|
||
fi
|
||
|
||
export DOCKER_BUILDKIT=1
|
||
export COMPOSE_DOCKER_CLI_BUILD=1
|
||
|
||
echo "==> 使用国内镜像源构建并启动 VFXdemo"
|
||
echo " - Node 基础镜像: docker.m.daocloud.io"
|
||
echo " - npm registry: registry.npmmirror.com"
|
||
|
||
"${COMPOSE_CMD[@]}" build --pull
|
||
"${COMPOSE_CMD[@]}" up -d
|
||
|
||
echo
|
||
echo "启动完成: http://localhost:5180"
|
||
echo "查看日志: ${COMPOSE_CMD[*]} logs -f"
|
||
echo "停止服务: ${COMPOSE_CMD[*]} down"
|