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

129 lines
7.4 KiB
YAML

services:
palworld:
image: thijsvanloef/palworld-server-docker:v1.4.6
stop_grace_period: 30s
ports:
- 8211:8211/udp
- 27015:27015/udp
volumes:
- palworld-data:/palworld/
environment:
- TZ=${TZ:?UTC}
- PUID=${PUID:?1000}
- PGID=${PGID:?1000}
- MULTITHREADING=${MULTITHREADING:?false}
- MAX_PLAYERS=${PLAYERS:?16}
- SERVER_NAME=${SERVER_NAME:?palworld-server-docker by Thijs van Loef via Coolify}
- SERVER_DESCRIPTION=${SERVER_DESCRIPTION:?palworld-server-docker by Thijs van Loef via Coolify}
- SERVER_PASSWORD=${SERVER_PASSWORD:?worldofpals}
- ADMIN_PASSWORD=${ADMIN_PASSWORD:-adminPassword}
- COMMUNITY=${COMMUNITY:?false}
- PUBLIC_IP=${PUBLIC_IP:-}
- PUBLIC_PORT=${PUBLIC_PORT:?8211}
- PORT=${PORT:?8211}
- QUERY_PORT=${QUERY_PORT:?27015}
- UPDATE_ON_BOOT=${UPDATE_ON_BOOT:?true}
- RCON_ENABLED=${RCON_ENABLED:?true}
- RCON_PORT=${RCON_PORT:?25575}
- BACKUP_ENABLED=${BACKUP_ENABLED:?true}
- DELETE_OLD_BACKUPS=${DELETE_OLD_BACKUPS:?false}
- OLD_BACKUP_DAYS=${OLD_BACKUP_DAYS:?30}
- BACKUP_CRON_EXPRESSION=${BACKUP_CRON_EXPRESSION:?0 0 * * *}
- AUTO_UPDATE_ENABLED=${AUTO_UPDATE_ENABLED:?false}
- AUTO_UPDATE_CRON_EXPRESSION=${AUTO_UPDATE_CRON_EXPRESSION:?0 * * * *}
- AUTO_UPDATE_WARN_MINUTES=${AUTO_UPDATE_WARN_MINUTES:?30}
- AUTO_REBOOT_ENABLED=${AUTO_REBOOT_ENABLED:?false}
- AUTO_REBOOT_EVEN_IF_PLAYERS_ONLINE=${AUTO_REBOOT_EVEN_IF_PLAYERS_ONLINE:?false}
- AUTO_REBOOT_WARN_MINUTES=${AUTO_REBOOT_WARN_MINUTES:?5}
- AUTO_REBOOT_CRON_EXPRESSION=${AUTO_REBOOT_CRON_EXPRESSION:?0 0 * * *}
- AUTO_PAUSE_ENABLED=${AUTO_PAUSE_ENABLED:?false}
- AUTO_PAUSE_TIMEOUT_EST=${AUTO_PAUSE_TIMEOUT_EST:?180}
- AUTO_PAUSE_LOG=${AUTO_PAUSE_LOG:?true}
- AUTO_PAUSE_DEBUG=${AUTO_PAUSE_DEBUG:?false}
- ENABLE_PLAYER_LOGGING=${ENABLE_PLAYER_LOGGING:?true}
- PLAYER_LOGGING_POLL_PERIOD=${PLAYER_LOGGING_POLL_PERIOD:?5}
- DIFFICULTY=${DIFFICULTY:?None}
- RANDOMIZER_TYPE=${RANDOMIZER_TYPE:-}
- RANDOMIZER_SEED=${RANDOMIZER_SEED:?none}
- DAYTIME_SPEEDRATE=${DAYTIME_SPEEDRATE:?1.000000}
- NIGHTTIME_SPEEDRATE=${NIGHTTIME_SPEEDRATE:?1.000000}
- EXP_RATE=${EXP_RATE:?1.000000}
- PAL_CAPTURE_RATE=${PAL_CAPTURE_RATE:?1.000000}
- PAL_SPAWN_NUM_RATE=${PAL_SPAWN_NUM_RATE:?1.000000}
- PAL_DAMAGE_RATE_ATTACK=${PAL_DAMAGE_RATE_ATTACK:?1.000000}
- PAL_DAMAGE_RATE_DEFENSE=${PAL_DAMAGE_RATE_DEFENSE:?1.000000}
- PLAYER_DAMAGE_RATE_ATTACK=${PLAYER_DAMAGE_RATE_ATTACK:?1.000000}
- PLAYER_DAMAGE_RATE_DEFENSE=${PLAYER_DAMAGE_RATE_DEFENSE:?1.000000}
- PLAYER_STOMACH_DECREASE_RATE=${PLAYER_STOMACH_DECREASE_RATE:?1.000000}
- PLAYER_STAMINA_DECREASE_RATE=${PLAYER_STAMINA_DECREASE_RATE:?1.000000}
- PLAYER_AUTO_HP_REGEN_RATE=${PLAYER_AUTO_HP_REGEN_RATE:?1.000000}
- PLAYER_AUTO_HP_REGEN_RATE_IN_SLEEP=${PLAYER_AUTO_HP_REGEN_RATE_IN_SLEEP:?1.000000}
- PAL_STOMACH_DECREASE_RATE=${PAL_STOMACH_DECREASE_RATE:?1.000000}
- PAL_STAMINA_DECREASE_RATE=${PAL_STAMINA_DECREASE_RATE:?1.000000}
- PAL_AUTO_HP_REGEN_RATE=${PAL_AUTO_HP_REGEN_RATE:?1.000000}
- PAL_AUTO_HP_REGEN_RATE_IN_SLEEP=${PAL_AUTO_HP_REGEN_RATE_IN_SLEEP:?1.000000}
- BUILD_OBJECT_HP_RATE=${BUILD_OBJECT_HP_RATE:?1.000000}
- BUILD_OBJECT_DAMAGE_RATE=${BUILD_OBJECT_DAMAGE_RATE:?1.000000}
- BUILD_OBJECT_DETERIORATION_DAMAGE_RATE=${BUILD_OBJECT_DETERIORATION_DAMAGE_RATE:?1.000000}
- COLLECTION_DROP_RATE=${COLLECTION_DROP_RATE:?1.000000}
- COLLECTION_OBJECT_HP_RATE=${COLLECTION_OBJECT_HP_RATE:?1.000000}
- COLLECTION_OBJECT_RESPAWN_SPEED_RATE=${COLLECTION_OBJECT_RESPAWN_SPEED_RATE:?1.000000}
- ENEMY_DROP_ITEM_RATE=${ENEMY_DROP_ITEM_RATE:?1.000000}
- DEATH_PENALTY=${DEATH_PENALTY:?All}
- ENABLE_PLAYER_TO_PLAYER_DAMAGE=${ENABLE_PLAYER_TO_PLAYER_DAMAGE:?False}
- ENABLE_FRIENDLY_FIRE=${ENABLE_FRIENDLY_FIRE:?False}
- ENABLE_INVADER_ENEMY=${ENABLE_INVADER_ENEMY:?True}
- ACTIVE_UNKO=${ACTIVE_UNKO:?False}
- ENABLE_AIM_ASSIST_PAD=${ENABLE_AIM_ASSIST_PAD:?True}
- ENABLE_AIM_ASSIST_KEYBOARD=${ENABLE_AIM_ASSIST_KEYBOARD:?False}
- DROP_ITEM_MAX_NUM=${DROP_ITEM_MAX_NUM:?3000}
- DROP_ITEM_MAX_NUM_UNKO=${DROP_ITEM_MAX_NUM_UNKO:?100}
- BASE_CAMP_MAX_NUM=${BASE_CAMP_MAX_NUM:?128}
- BASE_CAMP_WORKER_MAX_NUM=${BASE_CAMP_WORKER_MAX_NUM:?15}
- DROP_ITEM_ALIVE_MAX_HOURS=${DROP_ITEM_ALIVE_MAX_HOURS:?1.000000}
- AUTO_RESET_GUILD_NO_ONLINE_PLAYERS=${AUTO_RESET_GUILD_NO_ONLINE_PLAYERS:?False}
- AUTO_RESET_GUILD_TIME_NO_ONLINE_PLAYERS=${AUTO_RESET_GUILD_TIME_NO_ONLINE_PLAYERS:?72.000000}
- GUILD_PLAYER_MAX_NUM=${GUILD_PLAYER_MAX_NUM:?20}
- BASE_CAMP_MAX_NUM_IN_GUILD=${BASE_CAMP_MAX_NUM_IN_GUILD:?4}
- PAL_EGG_DEFAULT_HATCHING_TIME=${PAL_EGG_DEFAULT_HATCHING_TIME:?72.000000}
- WORK_SPEED_RATE=${WORK_SPEED_RATE:?1.000000}
- AUTO_SAVE_SPAN=${AUTO_SAVE_SPAN:?30.000000}
- IS_MULTIPLAY=${IS_MULTIPLAY:?False}
- IS_PVP=${IS_PVP:?False}
- HARDCORE=${HARDCORE:?False}
- PAL_LOST=${PAL_LOST:?False}
- CAN_PICKUP_OTHER_GUILD_DEATH_PENALTY_DROP=${CAN_PICKUP_OTHER_GUILD_DEATH_PENALTY_DROP:?False}
- ENABLE_NON_LOGIN_PENALTY=${ENABLE_NON_LOGIN_PENALTY:?True}
- ENABLE_FAST_TRAVEL=${ENABLE_FAST_TRAVEL:?True}
- IS_START_LOCATION_SELECT_BY_MAP=${IS_START_LOCATION_SELECT_BY_MAP:?True}
- EXIST_PLAYER_AFTER_LOGOUT=${EXIST_PLAYER_AFTER_LOGOUT:?False}
- ENABLE_DEFENSE_OTHER_GUILD_PLAYER=${ENABLE_DEFENSE_OTHER_GUILD_PLAYER:?False}
- INVISIBLE_OTHER_GUILD_BASE_CAMP_AREA_FX=${INVISIBLE_OTHER_GUILD_BASE_CAMP_AREA_FX:?False}
- BUILD_AREA_LIMIT=${BUILD_AREA_LIMIT:?False}
- ITEM_WEIGHT_RATE=${ITEM_WEIGHT_RATE:?1.000000}
- COOP_PLAYER_MAX_NUM=${COOP_PLAYER_MAX_NUM:?4}
- REGION=${REGION:-}
- USEAUTH=${USEAUTH:?True}
- BAN_LIST_URL=${BAN_LIST_URL:?https://api.palworldgame.com/api/banlist.txt}
- REST_API_ENABLED=${REST_API_ENABLED:?False}
- REST_API_PORT=${REST_API_PORT:?8212}
- SHOW_PLAYER_LIST=${SHOW_PLAYER_LIST:?True}
- ENABLE_PREDATOR_BOSS_PAL=${ENABLE_PREDATOR_BOSS_PAL:?True}
- MAX_BUILDING_LIMIT_NUM=${MAX_BUILDING_LIMIT_NUM:?0}
- SERVER_REPLICATE_PAWN_CULL_DISTANCE=${SERVER_REPLICATE_PAWN_CULL_DISTANCE:?15000.000000}
- SERVER_REPLICATE_PAWN_CULL_DISTANCE_IN_BASE_CAMP=${SERVER_REPLICATE_PAWN_CULL_DISTANCE_IN_BASE_CAMP:?5000.000000}
- CROSSPLAY_PLATFORMS=${CROSSPLAY_PLATFORMS:?(Steam,Xbox,PS5,Mac)}
- USE_BACKUP_SAVE_DATA=${USE_BACKUP_SAVE_DATA:?True}
- USE_DEPOT_DOWNLOADER=${USE_DEPOT_DOWNLOADER:?False}
- INSTALL_BETA_INSIDER=${INSTALL_BETA_INSIDER:?False}
- ALLOW_GLOBAL_PALBOX_EXPORT=${ALLOW_GLOBAL_PALBOX_EXPORT:?True}
- ALLOW_GLOBAL_PALBOX_IMPORT=${ALLOW_GLOBAL_PALBOX_IMPORT:?False}
- EQUIPMENT_DURABILITY_DAMAGE_RATE=${EQUIPMENT_DURABILITY_DAMAGE_RATE:?1.000000}
- ITEM_CONTAINER_FORCE_MARK_DIRTY_INTERVAL=${ITEM_CONTAINER_FORCE_MARK_DIRTY_INTERVAL:?1.000000}
- BOX64_DYNAREC_STRONGMEM=${BOX64_DYNAREC_STRONGMEM:-}
- BOX64_DYNAREC_BIGBLOCK=${BOX64_DYNAREC_BIGBLOCK:-}
- BOX64_DYNAREC_SAFEFLAGS=${BOX64_DYNAREC_SAFEFLAGS:-}
- BOX64_DYNAREC_FASTROUND=${BOX64_DYNAREC_FASTROUND:-}
- BOX64_DYNAREC_FASTNAN=${BOX64_DYNAREC_FASTNAN:-}
- BOX64_DYNAREC_X87DOUBLE=${BOX64_DYNAREC_X87DOUBLE:-}