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.
46 lines
1.2 KiB
YAML
46 lines
1.2 KiB
YAML
services:
|
|
onetimesecret-redis:
|
|
image: redis:7-alpine
|
|
command: redis-server --requirepass ${REDIS_PASSWORD}
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
test:
|
|
- CMD
|
|
- redis-cli
|
|
- ping
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
|
|
onetimesecret:
|
|
image: 'onetimesecret/onetimesecret:latest'
|
|
restart: unless-stopped
|
|
environment:
|
|
# To see all available environment variables, visit:
|
|
# https://github.com/onetimesecret/onetimesecret/blob/develop/etc/config.example.yaml
|
|
- AUTH_AUTOVERIFY=true
|
|
- AUTH_SIGNUP=true
|
|
|
|
# Accounts created with this email address will have admin access
|
|
- COLONEL=${COLONEL}
|
|
|
|
# If you change your domain, make sure to update the HOST environment variable.
|
|
- HOST=${HOST}
|
|
|
|
- RACK_ENV=production
|
|
- REDIS_URL=redis://:${REDIS_PASSWORD}@onetimesecret-redis:6379/0
|
|
- SECRET=${SECRET}
|
|
- SSL=true
|
|
depends_on:
|
|
- onetimesecret-redis
|
|
healthcheck:
|
|
test:
|
|
- CMD
|
|
- ruby
|
|
- '-rnet/http'
|
|
- '-e'
|
|
- "exit(Net::HTTP.get_response(URI('http://localhost:3000')).is_a?(Net::HTTPSuccess) ? 0 : 1)"
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|