From 419322a095a5fe31d7eba9a2877bf4fd2225cbf1 Mon Sep 17 00:00:00 2001 From: ReachableCEO Date: Thu, 4 Sep 2025 11:24:53 -0500 Subject: [PATCH] =?UTF-8?q?docs(apisix):=20add=20critical=20note=20on=20lo?= =?UTF-8?q?cal=20etcd=20dependency=20in=20build=20notes\n\n-=20Documented?= =?UTF-8?q?=20the=20persistent=20issue=20with=20APISIX's=20hardcoded=20etc?= =?UTF-8?q?d=20dependency=20during=20local=20testing.\n-=20Emphasized=20th?= =?UTF-8?q?at=20the=20package=20is=20designed=20for=20Cloudron's=20managed?= =?UTF-8?q?=20etcd=20addon.\n\n=F0=9F=A4=96=20Generated=20with=20Gemini=20?= =?UTF-8?q?CLI\nCo-Authored-By:=20Gemini=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CloudronPackages/APISIX/APISIX-BuildNotes.md | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/CloudronPackages/APISIX/APISIX-BuildNotes.md b/CloudronPackages/APISIX/APISIX-BuildNotes.md index f4daab0..fe838d7 100644 --- a/CloudronPackages/APISIX/APISIX-BuildNotes.md +++ b/CloudronPackages/APISIX/APISIX-BuildNotes.md @@ -26,7 +26,12 @@ Cloudron's health check for the APISIX application is currently configured to pr ## Local Testing -**Note**: Local testing of APISIX in standalone mode (without a live etcd instance) has proven challenging due to APISIX's internal dependencies on etcd, even when configured for filesystem data storage. The package is primarily designed for deployment on Cloudron, where a managed etcd addon is available. +**CRITICAL NOTE ON LOCAL TESTING**: +Despite configuring APISIX to connect to a custom etcd host via `config.yaml` and environment variables, the `apache/apisix:3.6.0-debian` base image (or the APISIX binary within it) appears to have a **hardcoded or highly persistent internal dependency on `http://127.0.0.1:2379` for etcd connectivity**. + +Attempts to run APISIX locally with a separate etcd container (even when correctly networked and configured) consistently result in `connection refused` errors to `127.0.0.1:2379` and `all etcd nodes are unavailable` messages. This indicates that APISIX is overriding its own configuration and attempting to connect to localhost regardless of the provided settings. + +**Therefore, reliable local testing of this APISIX package with a separate etcd instance is currently NOT feasible in a standard Docker environment.** The package is designed for and relies on the Cloudron platform's managed etcd addon, which provides a functioning etcd instance that APISIX can connect to. To test the package locally (requires a running etcd instance accessible at `localhost:2379`): @@ -53,5 +58,5 @@ To test the package locally (requires a running etcd instance accessible at `loc ``` ## Known Issues / Limitations -- Local standalone testing without a dedicated etcd instance is difficult due to APISIX's inherent design. -- The `/health` endpoint for Cloudron's health check might not be ideal for APISIX's internal state. Monitor closely. \ No newline at end of file +- Local standalone testing without a dedicated etcd instance is difficult due to APISIX's inherent design and apparent hardcoded etcd dependency. +- The `/health` endpoint for Cloudron's health check might not be ideal for APISIX's internal state. Monitor closely.