diff --git a/docs/guides/agent/agent_component_reference/code.mdx b/docs/guides/agent/agent_component_reference/code.mdx index 91c6a316f..f7e393b18 100644 --- a/docs/guides/agent/agent_component_reference/code.mdx +++ b/docs/guides/agent/agent_component_reference/code.mdx @@ -23,6 +23,10 @@ We use gVisor to isolate code execution from the host system. Please follow [the RAGFlow Sandbox is a secure, pluggable code execution backend. It serves as the code executor for the **Code** component. Please follow the [instructions here](https://github.com/infiniflow/ragflow/tree/main/sandbox) to install RAGFlow Sandbox. +:::note Docker client version +The executor manager image now bundles Docker CLI `29.1.0` (API 1.44+). Older images shipped Docker 24.x and will fail against newer Docker daemons with `client version 1.43 is too old`. Pull the latest `infiniflow/sandbox-executor-manager:latest` or rebuild `./sandbox/executor_manager` if you encounter this error. +::: + :::tip NOTE If your RAGFlow Sandbox is not working, please be sure to consult the [Troubleshooting](#troubleshooting) section in this document. We assure you that it addresses 99.99% of the issues! ::: @@ -122,6 +126,22 @@ docker pull infiniflow/sandbox-base-nodejs:latest docker pull infiniflow/sandbox-base-python:latest ``` +### `docker: Error response from daemon: client version 1.43 is too old. Minimum supported API version is 1.44` + +**Root cause** + +The executor manager image you are running includes Docker CLI 24.x (API 1.43) while the host Docker daemon now requires API 1.44+ (e.g., Docker 25+ / 29.x). + +**Solution** + +Pull the refreshed image or rebuild locally so the embedded Docker client is new enough: + +```bash +docker pull infiniflow/sandbox-executor-manager:latest +# or +docker build -t sandbox-executor-manager:latest ./sandbox/executor_manager +``` + ### `HTTPConnectionPool(host='none', port=9385): Max retries exceeded.` **Root cause** diff --git a/docs/guides/agent/sandbox_quickstart.md b/docs/guides/agent/sandbox_quickstart.md index 507f8f6e3..55d8ef278 100644 --- a/docs/guides/agent/sandbox_quickstart.md +++ b/docs/guides/agent/sandbox_quickstart.md @@ -23,11 +23,13 @@ The architecture consists of isolated Docker base images for each supported lang - Linux distribution compatible with gVisor. - gVisor installed and configured. -- Docker version 24.0.0 or higher. +- Docker version 25.0 or higher (API 1.44+). The executor manager image now ships Docker CLI `29.1.0` to stay compatible with newer Docker daemons. - Docker Compose version 2.26.1 or higher (similar to RAGFlow requirements). - uv package and project manager installed. - (Optional) GNU Make for simplified command-line management. +> **Note:** If you see `client version 1.43 is too old. Minimum supported API version is 1.44`, pull the latest `infiniflow/sandbox-executor-manager:latest` from Docker Hub (or rebuild `./sandbox/executor_manager`). Older images embedded Docker 24.x, which cannot talk to upgraded Docker daemons. + ## Build Docker base images The sandbox uses isolated base images for secure containerised execution environments. @@ -113,4 +115,4 @@ Or use the Makefile shortcut: ```bash make logs -``` \ No newline at end of file +``` diff --git a/sandbox/README.md b/sandbox/README.md index 6384e7016..057618cb0 100644 --- a/sandbox/README.md +++ b/sandbox/README.md @@ -24,7 +24,7 @@ A secure, pluggable code execution backend for RAGFlow and beyond. - Linux distro compatible with gVisor - [gVisor](https://gvisor.dev/docs/user_guide/install/) -- Docker >= `24.0.0` +- Docker >= `25.0` (API 1.44+) — executor manager now bundles Docker CLI `29.1.0` to match newer daemons. - Docker Compose >= `v2.26.1` like [RAGFlow](https://github.com/infiniflow/ragflow) - [uv](https://docs.astral.sh/uv/) as package and project manager @@ -34,6 +34,10 @@ A secure, pluggable code execution backend for RAGFlow and beyond. --- +> ⚠️ **New Docker CLI requirement** +> +> If you see `client version 1.43 is too old. Minimum supported API version is 1.44`, pull the latest `infiniflow/sandbox-executor-manager:latest` (rebuilt with Docker CLI `29.1.0`) or rebuild `./sandbox/executor_manager` locally. Older images shipped Docker 24.x, which cannot talk to newer Docker daemons. + ### 🐳 Build Docker Base Images We use isolated base images for secure containerized execution: @@ -292,6 +296,22 @@ Follow this checklist to troubleshoot: 127.0.0.1 es01 infinity mysql minio redis sandbox-executor-manager ``` +- [ ] **Are you running the latest executor manager image?** + + **Common error:** + + `docker: Error response from daemon: client version 1.43 is too old. Minimum supported API version is 1.44` + + **Fix:** + + Pull the refreshed image that bundles Docker CLI `29.1.0`, or rebuild locally: + + ```bash + docker pull infiniflow/sandbox-executor-manager:latest + # or + docker build -t sandbox-executor-manager:latest ./sandbox/executor_manager + ``` + - [ ] **Have you enabled sandbox-related configurations in RAGFlow?** Double-check that all sandbox settings are correctly enabled in your RAGFlow configuration.