Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -183,6 +183,7 @@ SEARXNG_HOSTNAME=searxng.yourdomain.com
SUPABASE_HOSTNAME=supabase.yourdomain.com
WAHA_HOSTNAME=waha.yourdomain.com
WEAVIATE_HOSTNAME=weaviate.yourdomain.com
UPTIME_KUMA_HOSTNAME=uptime-kuma.yourdomain.com
WEBUI_HOSTNAME=webui.yourdomain.com
WELCOME_HOSTNAME=welcome.yourdomain.com

Expand Down Expand Up @@ -446,7 +447,7 @@ GOST_UPSTREAM_PROXY=

# Internal services bypass list (prevents internal Docker traffic from going through proxy)
# Includes: Docker internal networks (172.16-31.*, 10.*), Docker DNS (127.0.0.11), and all service hostnames
GOST_NO_PROXY=localhost,127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,.local,appsmith,postgres,postgres:5432,redis,redis:6379,caddy,ollama,neo4j,qdrant,weaviate,clickhouse,minio,searxng,crawl4ai,gotenberg,langfuse-web,langfuse-worker,flowise,n8n,n8n-import,n8n-worker-1,n8n-worker-2,n8n-worker-3,n8n-worker-4,n8n-worker-5,n8n-worker-6,n8n-worker-7,n8n-worker-8,n8n-worker-9,n8n-worker-10,n8n-runner-1,n8n-runner-2,n8n-runner-3,n8n-runner-4,n8n-runner-5,n8n-runner-6,n8n-runner-7,n8n-runner-8,n8n-runner-9,n8n-runner-10,letta,lightrag,docling,postiz,temporal,temporal-ui,ragflow,ragflow-mysql,ragflow-minio,ragflow-redis,ragflow-elasticsearch,ragapp,open-webui,comfyui,waha,libretranslate,paddleocr,nocodb,db,studio,kong,auth,rest,realtime,storage,imgproxy,meta,functions,analytics,vector,supavisor,gost,api.telegram.org,telegram.org,t.me,core.telegram.org
GOST_NO_PROXY=localhost,127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,.local,appsmith,postgres,postgres:5432,redis,redis:6379,caddy,ollama,neo4j,qdrant,weaviate,clickhouse,minio,searxng,crawl4ai,gotenberg,langfuse-web,langfuse-worker,flowise,n8n,n8n-import,n8n-worker-1,n8n-worker-2,n8n-worker-3,n8n-worker-4,n8n-worker-5,n8n-worker-6,n8n-worker-7,n8n-worker-8,n8n-worker-9,n8n-worker-10,n8n-runner-1,n8n-runner-2,n8n-runner-3,n8n-runner-4,n8n-runner-5,n8n-runner-6,n8n-runner-7,n8n-runner-8,n8n-runner-9,n8n-runner-10,letta,lightrag,docling,postiz,temporal,temporal-ui,ragflow,ragflow-mysql,ragflow-minio,ragflow-redis,ragflow-elasticsearch,ragapp,open-webui,comfyui,waha,libretranslate,paddleocr,nocodb,db,studio,kong,auth,rest,realtime,storage,imgproxy,meta,functions,analytics,vector,supavisor,gost,uptime-kuma,api.telegram.org,telegram.org,t.me,core.telegram.org

############
# Functions - Configuration for Functions
Expand Down
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,12 @@

## [Unreleased]

## [1.4.0] - 2026-03-15

### Added
- **Uptime Kuma** - Self-hosted uptime monitoring with 90+ notification services
- **pgvector** - Switch PostgreSQL image to `pgvector/pgvector` for vector similarity search support

## [1.3.3] - 2026-02-27

### Fixed
Expand Down
6 changes: 6 additions & 0 deletions Caddyfile
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,12 @@ import /etc/caddy/addons/tls-snippet.conf
reverse_proxy temporal-ui:8080
}

# Uptime Kuma
{$UPTIME_KUMA_HOSTNAME} {
import service_tls
reverse_proxy uptime-kuma:3001
}

# Databasus
{$DATABASUS_HOSTNAME} {
import service_tls
Expand Down
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,8 @@ The installer also makes the following powerful open-source tools **available fo

✅ [**Supabase**](https://supabase.com/) - An open-source alternative to Firebase, providing database storage, user authentication, and more. It's a popular choice for AI applications.

✅ [**Uptime Kuma**](https://github.com/louislam/uptime-kuma) - Self-hosted uptime monitoring tool with notifications

✅ [**WAHA**](https://waha.devlike.pro/) - WhatsApp HTTP API (REST API) that you can configure in a click! 3 engines: WEBJS (browser based), NOWEB (websocket nodejs), GOWS (websocket go).

✅ [**Weaviate**](https://weaviate.io/) - An open-source AI-native vector database with a focus on scalability and ease of use. It can be used for RAG, hybrid search, and more.
Expand Down Expand Up @@ -204,6 +206,7 @@ After successful installation, your services are up and running! Here's how to g
- **RAGFlow:** `ragflow.yourdomain.com`
- **SearXNG:** `searxng.yourdomain.com`
- **Supabase (Dashboard):** `supabase.yourdomain.com`
- **Uptime Kuma:** `uptime-kuma.yourdomain.com` (Uptime monitoring dashboard)
- **WAHA:** `waha.yourdomain.com` (WhatsApp HTTP API; engines: WEBJS, NOWEB, GOWS)
- **Weaviate:** `weaviate.yourdomain.com`

Expand Down
22 changes: 21 additions & 1 deletion docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ volumes:
ragflow_redis_data:
temporal_elasticsearch_data:
valkey-data:
uptime_kuma_data:
weaviate_data:

# Shared logging configuration for services
Expand Down Expand Up @@ -380,6 +381,7 @@ services:
SEARXNG_PASSWORD_HASH: ${SEARXNG_PASSWORD_HASH}
SEARXNG_USERNAME: ${SEARXNG_USERNAME}
SUPABASE_HOSTNAME: ${SUPABASE_HOSTNAME}
UPTIME_KUMA_HOSTNAME: ${UPTIME_KUMA_HOSTNAME}
WAHA_HOSTNAME: ${WAHA_HOSTNAME}
WEAVIATE_HOSTNAME: ${WEAVIATE_HOSTNAME}
WEBUI_HOSTNAME: ${WEBUI_HOSTNAME}
Expand Down Expand Up @@ -542,7 +544,7 @@ services:

postgres:
container_name: postgres
image: postgres:${POSTGRES_VERSION:-17}
image: pgvector/pgvector:pg${POSTGRES_VERSION:-17}
restart: unless-stopped
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
Expand Down Expand Up @@ -1276,3 +1278,21 @@ services:
timeout: 10s
retries: 5
start_period: 30s

uptime-kuma:
image: louislam/uptime-kuma:2
container_name: uptime-kuma
profiles: ["uptime-kuma"]
restart: unless-stopped
logging: *default-logging
environment:
<<: *proxy-env
UPTIME_KUMA_WS_ORIGIN_CHECK: bypass
volumes:
- uptime_kuma_data:/app/data
healthcheck:
test: ["CMD-SHELL", "http_proxy= https_proxy= HTTP_PROXY= HTTPS_PROXY= wget -qO- http://localhost:3001/ || exit 1"]
interval: 30s
timeout: 10s
retries: 5
start_period: 30s
1 change: 1 addition & 0 deletions scripts/04_wizard.sh
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@ base_services_data=(
"ragflow" "RAGFlow (Deep document understanding RAG engine)"
"searxng" "SearXNG (Private Metasearch Engine)"
"supabase" "Supabase (Backend as a Service)"
"uptime-kuma" "Uptime Kuma (Uptime Monitoring)"
"waha" "WAHA – WhatsApp HTTP API (NOWEB engine)"
"weaviate" "Weaviate (Vector Database with API Key Auth)"
)
Expand Down
3 changes: 3 additions & 0 deletions scripts/07_final_report.sh
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,9 @@ fi
if is_profile_active "postiz"; then
echo -e " ${GREEN}*${NC} ${WHITE}Postiz${NC}: Create your account on first login"
fi
if is_profile_active "uptime-kuma"; then
echo -e " ${GREEN}*${NC} ${WHITE}Uptime Kuma${NC}: Create your account on first login"
fi
if is_profile_active "gost"; then
echo -e " ${GREEN}*${NC} ${WHITE}Gost Proxy${NC}: Routing AI traffic through external proxy"
fi
Expand Down
10 changes: 10 additions & 0 deletions scripts/generate_welcome_page.sh
Original file line number Diff line number Diff line change
Expand Up @@ -354,6 +354,16 @@ if is_profile_active "postiz"; then
}")
fi

# Uptime Kuma
if is_profile_active "uptime-kuma"; then
SERVICES_ARRAY+=(" \"uptime-kuma\": {
\"hostname\": \"$(json_escape "$UPTIME_KUMA_HOSTNAME")\",
\"credentials\": {
\"note\": \"Create account on first login\"
}
}")
fi

# WAHA
if is_profile_active "waha"; then
SERVICES_ARRAY+=(" \"waha\": {
Expand Down
7 changes: 6 additions & 1 deletion scripts/update_preview.sh
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ echo ""

# Core services (always checked)
log_subheader "Core Services"
check_image_update "postgres" "postgres:${POSTGRES_VERSION:-17}-alpine"
check_image_update "postgres" "pgvector/pgvector:pg${POSTGRES_VERSION:-17}"
check_image_update "redis" "valkey/valkey:8-alpine"
check_image_update "caddy" "caddy:2-alpine"

Expand Down Expand Up @@ -139,6 +139,11 @@ if is_profile_active "appsmith"; then
check_image_update "appsmith" "appsmith/appsmith-ce:release"
fi

if is_profile_active "uptime-kuma"; then
log_subheader "Uptime Kuma"
check_image_update "uptime-kuma" "louislam/uptime-kuma:2"
fi

# Summary
log_divider
echo ""
Expand Down
8 changes: 8 additions & 0 deletions welcome/app.js
Original file line number Diff line number Diff line change
Expand Up @@ -420,6 +420,14 @@
category: 'tools',
docsUrl: 'https://docs.python.org'
},
'uptime-kuma': {
name: 'Uptime Kuma',
description: 'Uptime Monitoring Dashboard',
icon: 'UK',
color: 'bg-[#5CDD8B]',
category: 'monitoring',
docsUrl: 'https://github.com/louislam/uptime-kuma'
},
'cloudflare-tunnel': {
name: 'Cloudflare Tunnel',
description: 'Zero-Trust Network Access',
Expand Down
Loading