From 2464371f386359cb54e45ff55d51be13bea0df8e Mon Sep 17 00:00:00 2001 From: Aykhan Shahsuvarov Date: Sun, 26 Apr 2026 13:28:24 +0000 Subject: [PATCH] update stalwart-bootstrap --- main.sh | 7 ++++++- stalwart/docker-compose.yaml | 6 +++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/main.sh b/main.sh index 29583df..b67ff13 100755 --- a/main.sh +++ b/main.sh @@ -210,10 +210,15 @@ start_services() { echo "Starting stalwart..." $DOCKER_COMPOSE_COMMAND -f ./stalwart/docker-compose.yaml up --pull always -d + if [ $? -ne 0 ]; then + print_error "failed to start Stalwart!" + exit 1 + fi + $DOCKER_COMPOSE_COMMAND -f ./stalwart/docker-compose.yaml run --rm --pull always stalwart-bootstrap if [ $? -eq 0 ]; then print_success "Stalwart started successfully." else - print_error "failed to start Stalwart!" + print_error "Stalwart bootstrap failed!" exit 1 fi diff --git a/stalwart/docker-compose.yaml b/stalwart/docker-compose.yaml index 29ff2ee..6187b97 100644 --- a/stalwart/docker-compose.yaml +++ b/stalwart/docker-compose.yaml @@ -40,6 +40,7 @@ services: max-file: "3" stalwart-bootstrap: + profiles: [bootstrap] build: context: . dockerfile: Dockerfile.bootstrap @@ -71,7 +72,10 @@ services: # 3) Idempotent SystemSettings update (singleton) stalwart-cli update SystemSettings --field "defaultHostname=$$STALWART_DEFAULT_HOSTNAME" --field "defaultDomainId=$$DOMAIN_ID" - # 4) Trigger settings reload so url_https recomputes (no restart needed) + # 4) Trust X-Forwarded-* headers from Caddy (real client IP for security/rate-limit) + stalwart-cli update Http --field useXForwarded=true + + # 5) Trigger settings reload so url_https recomputes (no restart needed) stalwart-cli create Action/ReloadSettings --json "{}" echo "Bootstrap complete"