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.4 KiB
YAML

services:
mariadb:
image: mariadb:11.1
environment:
- ALLOW_EMPTY_PASSWORD=no
- MYSQL_ROOT_PASSWORD=$SERVICE_PASSWORD_ROOT
- MYSQL_DATABASE=bitnami_moodle
- MYSQL_USER=$SERVICE_USER_MARIADB
- MYSQL_PASSWORD=$SERVICE_PASSWORD_MARIADB
- MARIADB_CHARACTER_SET=utf8mb4
- MARIADB_COLLATE=utf8mb4_unicode_ci
volumes:
- mariadb-data:/var/lib/mysql
healthcheck:
test:
- CMD-SHELL
- bash -c '</dev/tcp/localhost/3306'
interval: 10s
timeout: 5s
retries: 5
moodle:
image: docker.io/bitnamilegacy/moodle:4.3
depends_on:
- mariadb
environment:
- MOODLE_DATABASE_HOST=mariadb
- MOODLE_DATABASE_PORT_NUMBER=3306
- MOODLE_DATABASE_USER=$SERVICE_USER_MARIADB
- MOODLE_DATABASE_NAME=bitnami_moodle
- MOODLE_DATABASE_PASSWORD=$SERVICE_PASSWORD_MARIADB
- ALLOW_EMPTY_PASSWORD=no
- MOODLE_USERNAME=${MOODLE_USERNAME:-user}
- MOODLE_PASSWORD=$SERVICE_PASSWORD_MOODLE
- [email protected]
- MOODLE_SITE_NAME=${MOODLE_SITE_NAME:-New Site}
volumes:
- moodle-data:/bitnami/moodle
- moodledata-data:/bitnami/moodledata
healthcheck:
test:
- CMD
- php
- -r
- "exit(file_exists('/opt/bitnami/moodle/config.php') ? 0 : 1);"
interval: 20s
timeout: 10s
retries: 5