Skip to content

Commit 44d5687

Browse files
feat: Docker wrapper支持--local参数挂载本地checks目录
1 parent db63ab1 commit 44d5687

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

scripts/install-docker.sh

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,9 +137,29 @@ fi
137137
# 检查更新(后台执行)
138138
check_update
139139
140+
# 解析 --local 参数,获取本地 checks 路径
141+
LOCAL_MOUNT=""
142+
for i in "${!BASH_ARGV[@]}"; do
143+
:
144+
done
145+
# 遍历参数查找 --local
146+
ARGS=("$@")
147+
for i in "${!ARGS[@]}"; do
148+
if [[ "${ARGS[$i]}" == "--local" ]]; then
149+
LOCAL_PATH="${ARGS[$((i+1))]}"
150+
if [ -n "$LOCAL_PATH" ] && [ -d "$LOCAL_PATH" ]; then
151+
# 转换为绝对路径
152+
LOCAL_PATH=$(cd "$LOCAL_PATH" && pwd)
153+
LOCAL_MOUNT="-v ${LOCAL_PATH}:${LOCAL_PATH}"
154+
fi
155+
break
156+
fi
157+
done
158+
140159
# 运行容器
141160
# -v $(pwd):/workspace - 挂载当前目录为工作目录
142161
# -v ~/.bootcs:/root/.bootcs - 持久化凭证和缓存
162+
# -v LOCAL_PATH:LOCAL_PATH - 挂载本地 checks 目录(如果指定)
143163
# -it - 交互模式 (login 需要)
144164
# --rm - 运行后删除容器
145165
@@ -148,11 +168,13 @@ if [[ "$1" == "login" ]]; then
148168
docker run -it --rm \
149169
-v "$(pwd)":/workspace \
150170
-v "${CONFIG_DIR}":/root/.bootcs \
171+
${LOCAL_MOUNT} \
151172
"${IMAGE}" "$@"
152173
else
153174
docker run --rm \
154175
-v "$(pwd)":/workspace \
155176
-v "${CONFIG_DIR}":/root/.bootcs \
177+
${LOCAL_MOUNT} \
156178
"${IMAGE}" "$@"
157179
fi
158180
'

0 commit comments

Comments
 (0)