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

48 lines
1.1 KiB
YAML

services:
ctfd:
image: ctfd/ctfd:3.8.6
environment:
UPLOAD_FOLDER: /var/uploads
DATABASE_URL: mysql+pymysql://tipi:${CTFD_MYSQL_DB_PASSWORD}@ctfd-db/ctfd
REDIS_URL: redis://ctfd-redis:6379
WORKERS: "1"
LOG_FOLDER: /var/log/CTFd
ACCESS_LOG: "-"
ERROR_LOG: "-"
REVERSE_PROXY: "true"
SECRET_KEY: ${CTFD_SECRET_KEY}
depends_on:
- ctfd-db
volumes:
- ctfd-ctfd:/var/log/CTFd
- ctfd-uploads:/var/uploads
expose:
- "8000"
restart: always
ctfd-db:
image: mariadb:10.4.12
command:
- mysqld
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_unicode_ci
- --wait_timeout=28800
- --log-warnings=0
environment:
MYSQL_ROOT_PASSWORD: ${CTFD_MYSQL_ROOT_PASSWORD}
MYSQL_USER: tipi
MYSQL_PASSWORD: ${CTFD_MYSQL_DB_PASSWORD}
MYSQL_DATABASE: ctfd
volumes:
- ctfd-mysql:/var/lib/mysql
restart: always
ctfd-redis:
image: redis:4
volumes:
- ctfd-data:/data
restart: always
volumes:
ctfd-ctfd: {}
ctfd-uploads: {}
ctfd-mysql: {}
ctfd-data: {}