From 7422e01a22f2b953b5f496f81f5e87a13ce1628d Mon Sep 17 00:00:00 2001 From: cyph3rasi Date: Sat, 7 Mar 2026 17:48:14 -0800 Subject: [PATCH] Auto-select proxyless localhost port --- docker/install.sh | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/docker/install.sh b/docker/install.sh index 231bd69..d964966 100644 --- a/docker/install.sh +++ b/docker/install.sh @@ -94,13 +94,31 @@ generate_db_password() { openssl rand -base64 24 | tr -d '\n' | tr '/+' '_-' | cut -c1-32 } +find_available_port() { + start="${1:-3000}" + end="${2:-3020}" + + port="$start" + while [ "$port" -le "$end" ]; do + if ! is_port_in_use "$port"; then + printf '%s\n' "$port" + return 0 + fi + port=$((port + 1)) + done + + echo "❌ No available localhost port found in range ${start}-${end} for PROXY=none." >&2 + echo " Set PORT explicitly when rerunning the installer if you want a different range." >&2 + exit 1 +} + resolve_proxyless_port() { if [ -n "${PORT:-}" ] && [ "${PORT}" != "auto" ]; then printf '%s\n' "${PORT}" return fi - printf '%s\n' "3000" + find_available_port 3000 3020 } install_docker_if_needed() {