refactor: rename postgresus to databasus

rebrand backup service following upstream project rename.
updates docker image to databasus/databasus:latest,
adds healthcheck, and includes cleanup function for
migration from old container name.
This commit is contained in:
Yury Kossakovsky
2025-12-28 11:00:07 -07:00
parent 8b16b37265
commit 944844871a
12 changed files with 79 additions and 54 deletions

View File

@@ -6,7 +6,7 @@
#
# Features:
# - Single-screen checklist for service selection
# - Default services: n8n, portainer, monitoring, postgresus
# - Default services: n8n, portainer, monitoring, databasus
# - Preserves previously selected services on re-run
# - Updates COMPOSE_PROFILES in .env file
#
@@ -41,15 +41,16 @@ base_services_data=(
"cloudflare-tunnel" "Cloudflare Tunnel (Zero-Trust Secure Access)"
"comfyui" "ComfyUI (Node-based Stable Diffusion UI)"
"crawl4ai" "Crawl4ai (Web Crawler for AI)"
"docling" "Docling (Universal Document Converter to Markdown/JSON)"
"databasus" "Databasus (Database backups & monitoring)"
"dify" "Dify (AI Application Development Platform with LLMOps)"
"docling" "Docling (Universal Document Converter to Markdown/JSON)"
"flowise" "Flowise (AI Agent Builder)"
"gost" "Gost Proxy (HTTP/HTTPS proxy for AI services outbound traffic)"
"gotenberg" "Gotenberg (Document Conversion API)"
"langfuse" "Langfuse Suite (AI Observability - includes Clickhouse, Minio)"
"letta" "Letta (Agent Server & SDK)"
"lightrag" "LightRAG (Graph-based RAG with knowledge graphs)"
"libretranslate" "LibreTranslate (Self-hosted translation API - 50+ languages)"
"lightrag" "LightRAG (Graph-based RAG with knowledge graphs)"
"monitoring" "Monitoring Suite (Prometheus, Grafana, cAdvisor, Node-Exporter)"
"n8n" "n8n, n8n-worker, n8n-import (Workflow Automation)"
"neo4j" "Neo4j (Graph Database)"
@@ -58,7 +59,6 @@ base_services_data=(
"open-webui" "Open WebUI (ChatGPT-like Interface)"
"paddleocr" "PaddleOCR (OCR API Server)"
"portainer" "Portainer (Docker management UI)"
"postgresus" "Postgresus (PostgreSQL backups & monitoring)"
"postiz" "Postiz (Social publishing platform)"
"python-runner" "Python Runner (Run your custom Python code from ./python-runner)"
"qdrant" "Qdrant (Vector Database)"
@@ -92,7 +92,7 @@ while [ $idx -lt ${#base_services_data[@]} ]; do
else
# .env has no COMPOSE_PROFILES or it's empty/just quotes, use hardcoded defaults
case "$tag" in
"n8n"|"portainer"|"monitoring"|"postgresus") status="ON" ;;
"n8n"|"portainer"|"monitoring"|"databasus") status="ON" ;;
*) status="OFF" ;;
esac
fi

View File

@@ -70,8 +70,9 @@ bash "$SCRIPT_DIR/05_configure_services.sh" || {
}
log_success "Service configuration completed."
# Clean up legacy n8n worker containers from old naming convention
# Clean up legacy containers from old naming conventions
cleanup_legacy_n8n_workers
cleanup_legacy_postgresus
# Pull latest versions of selected containers based on updated .env
set_telemetry_stage "update_docker_pull"

View File

@@ -89,10 +89,10 @@ if is_profile_active "portainer"; then
}")
fi
# Postgresus
if is_profile_active "postgresus"; then
SERVICES_ARRAY+=(" \"postgresus\": {
\"hostname\": \"$(json_escape "$POSTGRESUS_HOSTNAME")\",
# Databasus
if is_profile_active "databasus"; then
SERVICES_ARRAY+=(" \"databasus\": {
\"hostname\": \"$(json_escape "$DATABASUS_HOSTNAME")\",
\"credentials\": {
\"note\": \"PostgreSQL credentials are shown in the PostgreSQL card\"
}
@@ -495,12 +495,12 @@ if is_profile_active "n8n"; then
((STEP_NUM++))
fi
# Step 3: Configure database backups (if postgresus active)
if is_profile_active "postgresus"; then
# Step 3: Configure database backups (if databasus active)
if is_profile_active "databasus"; then
QUICK_START_ARRAY+=(" {
\"step\": $STEP_NUM,
\"title\": \"Configure database backups\",
\"description\": \"Set up Postgresus for automated PostgreSQL backups\"
\"description\": \"Set up Databasus for automated database backups\"
}")
((STEP_NUM++))
fi

View File

@@ -129,9 +129,9 @@ if is_profile_active "searxng"; then
check_image_update "searxng" "searxng/searxng:latest"
fi
if is_profile_active "postgresus"; then
log_subheader "Postgresus"
check_image_update "postgresus" "ghcr.io/postgresus/postgresus:latest"
if is_profile_active "databasus"; then
log_subheader "Databasus"
check_image_update "databasus" "databasus/databasus:latest"
fi
# Summary

View File

@@ -638,6 +638,22 @@ cleanup_legacy_n8n_workers() {
fi
}
# Clean up legacy postgresus container after rename to databasus
# This function removes the old "postgresus" container if it exists,
# allowing the new "databasus" container to take its place.
# Usage: cleanup_legacy_postgresus
cleanup_legacy_postgresus() {
local container_name="postgresus"
# Check if container exists (running or stopped)
if docker ps -a --format '{{.Names}}' | grep -q "^${container_name}$"; then
log_info "Found legacy postgresus container, migrating to databasus..."
docker stop "$container_name" 2>/dev/null || true
docker rm -f "$container_name" 2>/dev/null || true
log_success "Legacy postgresus container removed. Databasus will use existing data via volume alias."
fi
}
#=============================================================================
# USER DETECTION
#=============================================================================