mirror of
https://github.com/QwenLM/qwen-code.git
synced 2025-12-19 09:33:53 +00:00
make sandbox attachable, document in README (#80)
This commit is contained in:
@@ -2,8 +2,8 @@
|
||||
set -euo pipefail
|
||||
|
||||
IMAGE=gemini-code-sandbox
|
||||
CLI_DIST=/usr/local/share/npm-global/lib/node_modules/\@gemini-code/cli
|
||||
WORKDIR=/sandbox/$(basename "$PWD")
|
||||
CLI_DIST=/usr/local/share/npm-global/lib/node_modules/\@gemini-code/cli
|
||||
|
||||
# use docker if installed, otherwise try to use podman instead
|
||||
if command -v docker &> /dev/null; then
|
||||
@@ -15,6 +15,19 @@ else
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# use interactive tty mode and auto-remove container on exit
|
||||
run_args=(-it --rm)
|
||||
|
||||
# mount current directory as $WORKDIR inside container
|
||||
run_args+=(-v "$PWD:$WORKDIR")
|
||||
|
||||
# name container after image, plus numeric suffix to avoid conflicts
|
||||
INDEX=0
|
||||
while $CMD ps -a --format "{{.Names}}" | grep -q "$IMAGE-$INDEX"; do
|
||||
INDEX=$((INDEX + 1))
|
||||
done
|
||||
run_args+=(--name "$IMAGE-$INDEX")
|
||||
|
||||
# run gemini-code in sandbox container
|
||||
# use empty --authfile to skip unnecessary auth refresh overhead
|
||||
$CMD run -it --rm --authfile <(echo '{}') -v"$PWD:$WORKDIR" --workdir "$WORKDIR" "$IMAGE" node "$CLI_DIST"
|
||||
$CMD run "${run_args[@]}" --authfile <(echo '{}') --workdir "$WORKDIR" "$IMAGE" node "$CLI_DIST"
|
||||
Reference in New Issue
Block a user