image: repository: itzg/minecraft-server tag: 2024.5.0@sha256:1ff47453ce66194927313d628c32a485c34d0acc9c01c9dbd643584c50cf89e6 pullPolicy: Always j21Image: repository: itzg/minecraft-server tag: 2024.5.0-java21@sha256:1ff47453ce66194927313d628c32a485c34d0acc9c01c9dbd643584c50cf89e6 pullPolicy: Always j21graalvmImage: repository: itzg/minecraft-server tag: 2024.5.0-java21-graalvm@sha256:497249e19a9d79b06381ae031ab6be707df9bfa570fbb3c243041e3b436c4bab pullPolicy: Always j21alpineImage: repository: itzg/minecraft-server tag: 2024.5.0-java21-alpine@sha256:aa06626784a8d6932acec4e49ad319a42844527bacab0db0039a8a1093b62e7f pullPolicy: Always j17Image: repository: itzg/minecraft-server tag: 2024.5.0-java17@sha256:10dad62a01e35a0eeba69e99f9c425ea0c190d19cf1aa35b9c8323819d884067 pullPolicy: Always j17jdkImage: repository: itzg/minecraft-server tag: 2024.5.0-java17-jdk@sha256:1ce891579630a5a42d0855a7e5b75f67fc56ed4479d68f675ae8ae8a6c1a658d pullPolicy: Always j17graalvmImage: repository: itzg/minecraft-server tag: 2024.5.0-java17-graalvm@sha256:201f19e4ec865a773133248412db7b19baac80975e865097eff30fee97df8472 pullPolicy: Always j17alpineImage: repository: itzg/minecraft-server tag: 2024.5.0-java17-alpine@sha256:f5ff1496dbb72e38c7a9a8d17de09801547a673a5aeb4fcb2e0d2741d430c4a6 pullPolicy: Always j11Image: repository: itzg/minecraft-server tag: 2024.5.0-java11@sha256:adc511e884945e206b0401a74e394dd4de8ae0f184e9029bd752e2a9c1041ed2 pullPolicy: Always j8Image: repository: itzg/minecraft-server tag: 2024.5.0-java8@sha256:2d0dab4bc81e0e20b35ff18208b27808e362100b6ab75c87b7ad395be01883f4 pullPolicy: Always j8graalvmImage: repository: itzg/minecraft-server tag: 2024.5.0-java8-graalvm-ce@sha256:5066dead723873a87344a606c973e825a39fd88993d0fb0ba408aba9cd7688a9 pullPolicy: Always j8jdkImage: repository: itzg/minecraft-server tag: 2024.5.0-java8-jdk@sha256:36517180605128ffa1aae846ffcd3902e5fd480b599dc3c175a08559334e352a pullPolicy: Always j8alpineImage: repository: itzg/minecraft-server tag: 2024.5.0-java8-alpine@sha256:33f47910edf341758f5a18e233f3e185ac3ea6a2765462749ff25a1d8dbeded4 pullPolicy: Always mcBackupImage: repository: itzg/mc-backup tag: latest@sha256:9dd26ec090b96193927d224e44afeac1a5d6980505fe5cac54bba6f03b65f34c pullPolicy: Always service: main: enabled: true ports: main: enabled: true protocol: tcp port: 25565 query: enabled: true protocol: udp port: 25565 rcon: enabled: true ports: rcon: enabled: true port: 25575 mcbackup: enabled: true initial_delay: 2m backup_interval: 24h player_online_check_interval: 5m prune_backups_days: 7 pause_if_no_players: false link_latest: false # values gzip,bzip2,zstd tar_compress_method: gzip # White spaced separated list zstd_params: - --long=25 - --single-thread # comma separated list excludes: - "*.jar" - "cache" - "logs" - "*.tmp" workload: main: podSpec: containers: main: imageSelector: image probes: liveness: enabled: true type: exec command: - mc-health readiness: enabled: true type: exec command: - mc-health startup: enabled: true type: exec command: - mc-health env: SERVER_PORT: "{{ .Values.service.main.ports.main.port }}" QUERY_PORT: "{{ .Values.service.main.ports.query.port }}" RCON_PORT: "{{ .Values.service.rcon.ports.rcon.port }}" ENABLE_QUERY: "true" EULA: "TRUE" GUI: "FALSE" OVERRIDE_SERVER_PROPERTIES: true VERSION: "LATEST" TYPE: "VANILLA" DIFFICULTY: easy MAX_PLAYERS: 20 MAX_WORLD_SIZE: 10000 ALLOW_NETHER: true ANNOUNCE_PLAYER_ACHIEVEMENTS: true ENABLE_COMMAND_BLOCK: false FORCE_GAMEMODE: false GENERATE_STRUCTURES: true HARDCORE: false MAX_BUILD_HEIGHT: 256 MAX_TICK_TIME: 60000 SPAWN_ANIMALS: true SPAWN_MONSTERS: true SPAWN_NPCS: true VIEW_DISTANCE: 16 MODE: survival MOTD: "Welcome to Minecraft on TrueNAS Scale!" PVP: false LEVEL_TYPE: DEFAULT LEVEL: world ONLINE_MODE: true MEMORY: 2048M RCON_PASSWORD: "secretrconpass" # PACKWIZ_URL: "" # CUSTOM_SERVER: "" # QUILT_LOADER_VERSION: "" # QUILT_LAUNCHER: "" # QUILT_LAUNCHER_URL: "" # PUFFERFISH_BUILD: "lastSuccessfulBuild" # FORGEVERSION: "" # FORGE_INSTALLER: "" # FORGE_INSTALLER_URL: "" # FABRIC_LOADER_VERSION: "" # FABRIC_INSTALLER: "" # FABRIC_INSTALLER_URL: "" # SPIGOT_DOWNLOAD_URL: "" # BUILD_FROM_SOURCE: false # BUKKIT_DOWNLOAD_URL: "" # PAPERBUILD: "" # PAPER_DOWNLOAD_URL: "" # AIRPLANE_BUILD: "lastSuccessfulBuild" # MAGMA_CHANNEL: "stable" # MOHIST_BUILD: "" # CANYON_BUILD: "" # SPONGEBRANCH: "STABLE" # SPONGEVERSION: "" # LIMBO_BUILD: "LATEST" # LIMBO_SCHEMA_FILENAME: "default.schem" # CRUCIBLE_RELEASE: "latest" # FTB_MODPACK_ID: "" # FTB_MODPACK_VERSION_ID: "" # CF_SERVER_MOD: "" # CF_BASE_DIR: "" # USE_MODPACK_START_SCRIPT: true # FTB_LEGACYJAVAFIXER: false # WHITELIST: "" # OPS: "" # ICON: "" # SEED: "" # GENERATOR_SETTINGS: "" # WORLD: "" # FORCE_REDOWNLOAD: false # USE_FLARE_FLAGS: false # USE_AIKAR_FLAGS: true # USE_SIMD_FLAGS: false # JVM_OPTS: "" # JVM_XX_OPTS: "" # CF_API_KEY # CF_PAGE_URL # CF_SLUG # CF_EXCLUDE_INCLUDE_FILE # CF_EXCLUDE_MODS # CF_FORCE_INCLUDE_MODS # CF_FORCE_SYNCHRONIZE # CF_OVERRIDES_SKIP_EXISTING # CF_PARALLEL_DOWNLOADS # CF_SET_LEVEL_FROM mcbackup: enabled: true type: Deployment podSpec: containers: mcbackup: primary: true enabled: true imageSelector: mcBackupImage probes: liveness: enabled: false readiness: enabled: false startup: enabled: false env: BACKUP_METHOD: "tar" DEST_DIR: "{{.Values.persistence.backups.mountPath }}" SRC_DIR: "{{.Values.persistence.data.mountPath }}" SERVER_PORT: "{{ .Values.service.main.ports.main.port }}" RCON_HOST: '{{ printf "%s-rcon" (include "tc.v1.common.lib.chart.names.fullname" $) }}' RCON_PORT: "{{ .Values.service.rcon.ports.rcon.port }}" RCON_PASSWORD: "{{ .Values.workload.main.podSpec.containers.main.env.RCON_PASSWORD }}" INITIAL_DELAY: "{{ .Values.mcbackup.initial_delay }}" BACKUP_INTERVAL: "{{ .Values.mcbackup.backup_interval }}" PRUNE_BACKUPS_DAYS: "{{ .Values.mcbackup.prune_backups_days }}" PAUSE_IF_NO_PLAYERS: "{{ .Values.mcbackup.pause_if_no_players }}" PLAYERS_ONLINE_CHECK_INTERVAL: "{{ .Values.mcbackup.player_online_check_interval }}" LINK_LATEST: "{{ .Values.mcbackup.link_latest }}" TAR_COMPRESS_METHOD: "{{ .Values.mcbackup.tar_compress_method }}" ZSTD_PARAMETERS: '{{ join " " .Values.mcbackup.zstd_params }}' EXCLUDES: '{{ join "," .Values.mcbackup.excludes }}' persistence: data: enabled: true targetSelector: main: main: mountPath: /data mcbackup: mcbackup: mountPath: /data readOnly: true backups: enabled: true targetSelector: mcbackup: mcbackup: mountPath: /backups portal: open: enabled: false