From 664e158bfff5c90892862e391eaaba893faab0f2 Mon Sep 17 00:00:00 2001 From: leiyun Date: Fri, 12 Jun 2026 23:49:11 +0800 Subject: [PATCH] save --- isolated/profiles/dc.sh | 46 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 isolated/profiles/dc.sh diff --git a/isolated/profiles/dc.sh b/isolated/profiles/dc.sh new file mode 100644 index 0000000..3cebf1c --- /dev/null +++ b/isolated/profiles/dc.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash +set -Eeu + +# docker compose 便捷包装:自动补齐 --env-file / -f / -p 固定参数。 +# +# 用法: +# ./dc.sh +# 为 test 或 uat(也接受 emp-test / emp-uat) +# +# 示例: +# ./dc.sh uat up -d emp-ws # 重建并启动 emp-ws +# ./dc.sh uat ps # 查看容器状态 +# ./dc.sh uat logs -f emp-monitor # 跟踪日志 +# ./dc.sh test up -d # 启动 test 全部服务 +# +# 默认在当前目录找 docker-compose.yml 和 .env; +# 也可用环境变量覆盖运行目录: +# RUNTIME_DIR=/home/admin-x99/emp/emp-uat/runtime ./dc.sh uat ps + +usage() { + echo "用法: $0 " >&2 + echo "示例: $0 uat up -d emp-ws" >&2 + exit 1 +} + +[[ "$#" -ge 2 ]] || usage + +ENV_ARG="$1" +shift + +case "$ENV_ARG" in + test|emp-test) PROJECT="emp-test" ;; + uat|emp-uat) PROJECT="emp-uat" ;; + *) echo "ERROR: 未知环境 '$ENV_ARG',只支持 test 或 uat" >&2; usage ;; +esac + +# 运行目录:默认当前目录,可用 RUNTIME_DIR 覆盖 +RUNTIME_DIR="${RUNTIME_DIR:-$PWD}" +COMPOSE_FILE="$RUNTIME_DIR/docker-compose.yml" +ENV_FILE="$RUNTIME_DIR/.env" + +[[ -f "$COMPOSE_FILE" ]] || { echo "ERROR: 找不到 $COMPOSE_FILE" >&2; exit 1; } +[[ -f "$ENV_FILE" ]] || { echo "ERROR: 找不到 $ENV_FILE" >&2; exit 1; } + +set -x +docker compose --env-file "$ENV_FILE" -f "$COMPOSE_FILE" -p "$PROJECT" "$@"