fix:优化数据
This commit is contained in:
@@ -1,13 +1,55 @@
|
||||
#!/usr/bin/env bash
|
||||
# 使用 Docker Compose 一键构建并启动 FastAPI + Next.js
|
||||
|
||||
# Docker 开发与部署:支持仅更新变动内容、动态加载,避免每次全量重建
|
||||
set -euo pipefail
|
||||
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
cd "${SCRIPT_DIR}"
|
||||
|
||||
echo "[Ops-Core] 使用 Docker 构建并启动服务 (backend + frontend)..."
|
||||
docker compose -f docker-compose.yml up --build
|
||||
COMPOSE_BASE="docker compose -f docker-compose.yml"
|
||||
COMPOSE_DEV="docker compose -f docker-compose.yml -f docker-compose.dev.yml"
|
||||
|
||||
# 如需后台模式,可改为:
|
||||
# docker compose -f docker-compose.yml up --build -d
|
||||
usage() {
|
||||
echo "用法: $0 [mode]"
|
||||
echo ""
|
||||
echo " (无参数) 默认构建并启动(生产模式,分层构建仅重建变更层)"
|
||||
echo " dev 开发模式:挂载代码 + 热重载(前台,Ctrl+C 会停容器)"
|
||||
echo " dev-bg 开发模式后台运行,Ctrl+C 不会停容器,停止用: $0 down"
|
||||
echo " restart 仅重启容器内服务,不重建镜像"
|
||||
echo " build 仅重新构建镜像(依赖未变时只重建代码层,较快)"
|
||||
echo " down 停止并移除容器"
|
||||
exit 0
|
||||
}
|
||||
|
||||
case "${1:-up}" in
|
||||
up|"")
|
||||
echo "[Ops-Core] 构建并启动(生产模式)..."
|
||||
${COMPOSE_BASE} up --build
|
||||
;;
|
||||
dev)
|
||||
echo "[Ops-Core] 开发模式:代码挂载 + 热重载,无需重建(Ctrl+C 会停止容器)..."
|
||||
${COMPOSE_DEV} up --build
|
||||
;;
|
||||
dev-bg)
|
||||
echo "[Ops-Core] 开发模式(后台):同上,但 Ctrl+C 不会停容器,需用 ./docker_dev.sh down 停止..."
|
||||
${COMPOSE_DEV} up --build -d
|
||||
;;
|
||||
restart)
|
||||
echo "[Ops-Core] 仅重启服务(不重建镜像)..."
|
||||
${COMPOSE_BASE} restart backend frontend
|
||||
;;
|
||||
build)
|
||||
echo "[Ops-Core] 仅构建镜像(变更少时只重建代码层)..."
|
||||
${COMPOSE_BASE} build
|
||||
;;
|
||||
down)
|
||||
${COMPOSE_BASE} down
|
||||
${COMPOSE_DEV} down 2>/dev/null || true
|
||||
;;
|
||||
-h|--help)
|
||||
usage
|
||||
;;
|
||||
*)
|
||||
echo "未知参数: $1"
|
||||
usage
|
||||
;;
|
||||
esac
|
||||
|
||||
Reference in New Issue
Block a user