diff --git a/DockerEntrypoint.sh b/DockerEntrypoint.sh index 95c86869..81d9fd58 100644 --- a/DockerEntrypoint.sh +++ b/DockerEntrypoint.sh @@ -2,11 +2,22 @@ FINISH_FILE="$GEODATA_DIR/cron-job-finished.txt" -while [ ! -f "$FINISH_FILE" ]; do - echo "Still waiting... (looking for $FINISH_FILE)" - sleep 10 +MAX_WAIT=300 # 5 minutes +ELAPSED=0 +INTERVAL=10 + +while [ ! -f "$FINISH_FILE" ] && [ $ELAPSED -lt $MAX_WAIT ]; do + echo "Still waiting for geodata initialization... ($ELAPSED/$MAX_WAIT seconds)" + sleep $INTERVAL + ELAPSED=$((ELAPSED + INTERVAL)) done +if [ ! -f "$FINISH_FILE" ]; then + echo "ERROR: Geodata initialization timed out after $MAX_WAIT seconds" + echo "Container startup aborted." + exit 1 +fi + # Start fail2ban [ "$XUI_ENABLE_FAIL2BAN" = "true" ] && fail2ban-client -x start