Files
zeekay cf4d0b027e templates.hanzo.ai: 1030-blueprint one-click deploy catalog
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.
2026-07-24 01:46:23 -07:00

65 lines
2.0 KiB
YAML

version: "3.8"
services:
wallabag:
image: wallabag/wallabag:2.6.14
restart: unless-stopped
expose:
- "80"
depends_on:
wallabag-db:
condition: service_healthy
wallabag-redis:
condition: service_healthy
environment:
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
- SYMFONY__ENV__DATABASE_DRIVER=pdo_mysql
- SYMFONY__ENV__DATABASE_HOST=wallabag-db
- SYMFONY__ENV__DATABASE_PORT=3306
- SYMFONY__ENV__DATABASE_NAME=wallabag
- SYMFONY__ENV__DATABASE_USER=wallabag
- SYMFONY__ENV__DATABASE_PASSWORD=${SYMFONY__ENV__DATABASE_PASSWORD}
- SYMFONY__ENV__DATABASE_CHARSET=utf8mb4
- SYMFONY__ENV__DATABASE_TABLE_PREFIX=wallabag_
- SYMFONY__ENV__MAILER_DSN=smtp://127.0.0.1
- SYMFONY__ENV__FROM_EMAIL=${SYMFONY__ENV__FROM_EMAIL}
- SYMFONY__ENV__DOMAIN_NAME=${SYMFONY__ENV__DOMAIN_NAME}
- SYMFONY__ENV__SERVER_NAME=${SYMFONY__ENV__SERVER_NAME}
- SYMFONY__ENV__SECRET=${SYMFONY__ENV__SECRET}
- SYMFONY__ENV__REDIS_HOST=wallabag-redis
volumes:
- wallabag-images:/var/www/wallabag/web/assets/images
wallabag-db:
image: mariadb:11.4
restart: unless-stopped
environment:
# Only the root password is set on purpose: the wallabag entrypoint
# creates the database and user and runs `wallabag:install` itself.
# Pre-creating the database (MARIADB_DATABASE) makes the entrypoint
# skip the install, leaving an empty schema and a persistent HTTP 500.
- MARIADB_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
volumes:
- wallabag-db-data:/var/lib/mysql
healthcheck:
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
interval: 20s
timeout: 5s
retries: 10
wallabag-redis:
image: redis:7-alpine
restart: unless-stopped
volumes:
- wallabag-redis-data:/data
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 20s
timeout: 5s
retries: 10
volumes:
wallabag-images:
wallabag-db-data:
wallabag-redis-data: