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.
42 lines
1.4 KiB
YAML
42 lines
1.4 KiB
YAML
services:
|
|
fix-perms:
|
|
image: busybox:1.36
|
|
command: >
|
|
sh -c "mkdir -p /opt/Lavalink/plugins &&
|
|
chmod -R 0777 /opt/Lavalink/plugins || true &&
|
|
chown -R 1000:1000 /opt/Lavalink/plugins || true &&
|
|
echo perms-fixed && sleep 1"
|
|
volumes:
|
|
- "../files/plugins/:/opt/Lavalink/plugins/"
|
|
- "../files/application.yml:/opt/Lavalink/application.yml"
|
|
restart: "no"
|
|
lavalink:
|
|
image: ghcr.io/lavalink-devs/lavalink:4
|
|
depends_on:
|
|
- fix-perms
|
|
restart: unless-stopped
|
|
environment:
|
|
_JAVA_OPTIONS: "${_JAVA_OPTIONS:--Xmx6G}"
|
|
LAVALINK_SERVER_PASSWORD: "${LAVALINK_SERVER_PASSWORD:-youshallnotpass}"
|
|
SERVER_PORT: "${SERVER_PORT:-2333}"
|
|
volumes:
|
|
- "../files/application.yml:/opt/Lavalink/application.yml:rw"
|
|
- "../files/plugins/:/opt/Lavalink/plugins/:rw"
|
|
ports:
|
|
- ${SERVER_PORT}
|
|
|
|
healthcheck:
|
|
test: >
|
|
sh -c 'wget --header="Authorization: ${LAVALINK_SERVER_PASSWORD}" -qO- http://127.0.0.1:${SERVER_PORT}/v4/info >/dev/null 2>&1 || exit 1'
|
|
interval: 100s
|
|
timeout: 5s
|
|
retries: 5
|
|
start_period: 30s
|
|
|
|
entrypoint: >
|
|
sh -c 'until [ -w /opt/Lavalink/plugins ] ; do
|
|
echo "waiting for /opt/Lavalink/plugins to be writable";
|
|
sleep 1;
|
|
done;
|
|
exec java -jar /opt/Lavalink/Lavalink.jar'
|