From 802a4d1ba0f57d7b6beeb253d6170b2e5961c0ad Mon Sep 17 00:00:00 2001 From: Kelin Date: Sat, 7 Feb 2026 16:24:57 -0500 Subject: [PATCH] Fix multiserver deployment: domain in docker-provider and auto-disable remote Traefik - Fix missing domain in docker provider defaultRule (use DOMAIN or DUCKDNS_DOMAIN) - Add disable_traefik_on_remote_services() to strip routing labels from remote services - Call disable function automatically during remote server deployment (Step 5.5) - Remote services now properly accessed through core Traefik via docker provider - Prevents errors: middleware/certresolver not found on remote Traefik Resolves Traefik errors on remote servers where services had labels for SSL/auth that only exist on core server. --- scripts/common.sh | 5 ++++- scripts/ez-homelab.sh | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 1 deletion(-) diff --git a/scripts/common.sh b/scripts/common.sh index f59edd5..1ea0d10 100644 --- a/scripts/common.sh +++ b/scripts/common.sh @@ -245,6 +245,9 @@ generate_traefik_provider_config() { return 1 fi + # Get domain from environment or use a default + local domain="${DOMAIN:-${DUCKDNS_DOMAIN}}" + cat > "$output_file" </dev/null; then + modified_count=$((modified_count + 1)) + debug_log "Disabled Traefik on $(basename $(dirname $config_file))" + fi + fi + done + + if [ $modified_count -gt 0 ]; then + log_success "Disabled local Traefik routing on $modified_count service stacks" + log_info "Services will be accessed through core Traefik at https://service.${DOMAIN}" + else + log_warning "No service configurations were modified" + fi +} + # Copy all stacks for remote server (except core) copy_all_stacks_for_remote() { debug_log "Copying all stacks for remote server"