mirror of
https://github.com/hanzo-apps/templates.git
synced 2026-10-30 14:48:30 +00:00
Aggregates five OSS one-click/self-hosting catalogs into the Dokploy blueprint
shape the Hanzo PaaS consumes (meta.json array + blueprints/<id>/{template.toml,
docker-compose.yml,meta.json,logo}):
Dokploy 500 (MIT, verbatim) · Coolify 174 (Apache-2.0) · CapRover 161
(Apache-2.0) · CasaOS 85 (Apache-2.0) · Runtipi 110 (GPL-3.0)
Deduped by app identity; each source + app keeps its upstream license
(ATTRIBUTION.md). Deterministic aggregators + a hard validator (every
template.toml parses with the platform's toml lib, every compose parses as YAML,
meta.json is the expected array, and an over-HTTP fetch probe exercises all
1030) — 0 hard failures. Served natively by hanzoai/static on DOKS (no CDN/Pages/
Vercel); CI builds on the hanzo-build-linux-amd64 arc pool; operator App CR in
crs/ serves it at templates.hanzo.ai.
57 lines
1.3 KiB
YAML
57 lines
1.3 KiB
YAML
services:
|
|
db:
|
|
image: postgres:17-alpine
|
|
restart: unless-stopped
|
|
volumes:
|
|
- db_data:/var/lib/postgresql/data
|
|
environment:
|
|
POSTGRES_DB: postgres
|
|
POSTGRES_USER: postgres
|
|
POSTGRES_PASSWORD: postgres
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U postgres"]
|
|
interval: 5s
|
|
timeout: 5s
|
|
retries: 5
|
|
|
|
notifuse:
|
|
image: notifuse/notifuse:latest
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- db
|
|
environment:
|
|
# Root user configuration
|
|
ROOT_EMAIL: ${ROOT_EMAIL}
|
|
|
|
# API configuration
|
|
API_ENDPOINT: ${API_ENDPOINT}
|
|
|
|
# Database configuration
|
|
DB_HOST: db
|
|
DB_PORT: 5432
|
|
DB_USER: postgres
|
|
DB_PASSWORD: postgres
|
|
DB_PREFIX: notifuse
|
|
DB_NAME: postgres
|
|
DB_SSLMODE: disable
|
|
|
|
# Secret key for authentication (auto-generated)
|
|
SECRET_KEY: ${SECRET_KEY}
|
|
|
|
# Server configuration
|
|
SERVER_PORT: 8080
|
|
SERVER_HOST: 0.0.0.0
|
|
ENVIRONMENT: production
|
|
volumes:
|
|
- notifuse_data:/app/data
|
|
healthcheck:
|
|
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8080/healthz"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 3
|
|
start_period: 10s
|
|
|
|
volumes:
|
|
db_data: {}
|
|
notifuse_data: {}
|