TrueNAS Apps Market

Expand your system’s capabilities quickly and easily by adding third-party software.

Download TrueNAS
TrueNAS UI and Apps screens

Minecraft

Minecraft Server (Java)
Get Started with Apps!
App Version: 2025.4.2 (Changelog)
Keywords: world, building
Train: Community
Home Page: https://www.minecraft.net/en-us
Minecraft Server (Java) Details
Added: 2024-08-05
Last Updated: 2025-05-12

Minecraft dedicated server for Java platform hosts a world for multiplayer game. Players can join the server using the Java client on Desktops.

Run as Context
  • Minecraft runs as root user.
    Group: 0 / root
    User: 0 / root

Security Capabilities
  • Minecraft is able to chown files.
  • Minecraft is able to bypass permission checks.
  • Minecraft is able bypass permission checks for it's sub-processes.
  • Minecraft is able to set group ID for it's sub-processes.
  • Minecraft is able to set user ID for it's sub-processes.
  • Minecraft is able to bind to a privileged port.

App Metadata (Raw File)
{
    "1.12.24": {
        "healthy": true,
        "supported": true,
        "healthy_error": null,
        "location": "/__w/apps/apps/trains/community/minecraft/1.12.24",
        "last_update": "2025-05-12 13:53:28",
        "required_features": [],
        "human_version": "2025.4.2_1.12.24",
        "version": "1.12.24",
        "app_metadata": {
            "app_version": "2025.4.2",
            "capabilities": [
                {
                    "description": "Minecraft is able to chown files.",
                    "name": "CHOWN"
                },
                {
                    "description": "Minecraft is able to bypass permission checks.",
                    "name": "DAC_OVERRIDE"
                },
                {
                    "description": "Minecraft is able bypass permission checks for it's sub-processes.",
                    "name": "FOWNER"
                },
                {
                    "description": "Minecraft is able to set group ID for it's sub-processes.",
                    "name": "SETGID"
                },
                {
                    "description": "Minecraft is able to set user ID for it's sub-processes.",
                    "name": "SETUID"
                },
                {
                    "description": "Minecraft is able to bind to a privileged port.",
                    "name": "NET_RAW"
                }
            ],
            "categories": [
                "games"
            ],
            "changelog_url": "https://github.com/itzg/docker-minecraft-server/releases",
            "date_added": "2024-08-05",
            "description": "Minecraft dedicated server for Java platform hosts a world for multiplayer game.\nPlayers can join the server using the Java client on Desktops.\n",
            "home": "https://www.minecraft.net/en-us",
            "host_mounts": [],
            "icon": "https://media.sys.truenas.net/apps/minecraft/icons/icon.svg",
            "keywords": [
                "world",
                "building"
            ],
            "lib_version": "2.1.16",
            "lib_version_hash": "dac15686f882b9ce65b8549a3d5c0ed7bafe2df7a9028880d1a99b0ff4af1eff",
            "maintainers": [
                {
                    "email": "dev@ixsystems.com",
                    "name": "truenas",
                    "url": "https://www.truenas.com/"
                }
            ],
            "name": "minecraft",
            "run_as_context": [
                {
                    "description": "Minecraft runs as root user.",
                    "gid": 0,
                    "group_name": "root",
                    "uid": 0,
                    "user_name": "root"
                }
            ],
            "screenshots": [],
            "sources": [
                "https://www.minecraft.net/en-us",
                "https://github.com/itzg/docker-minecraft-server"
            ],
            "title": "Minecraft Server (Java)",
            "train": "community",
            "version": "1.12.24"
        },
        "schema": {
            "groups": [
                {
                    "name": "Minecraft Configuration",
                    "description": "Configure Minecraft"
                },
                {
                    "name": "User and Group Configuration",
                    "description": "Configure User and Group for Minecraft"
                },
                {
                    "name": "Network Configuration",
                    "description": "Configure Network for Minecraft"
                },
                {
                    "name": "Storage Configuration",
                    "description": "Configure Storage for Minecraft"
                },
                {
                    "name": "Labels Configuration",
                    "description": "Configure Labels for Minecraft"
                },
                {
                    "name": "Resources Configuration",
                    "description": "Configure Resources for Minecraft"
                }
            ],
            "questions": [
                {
                    "variable": "TZ",
                    "group": "Minecraft Configuration",
                    "label": "Timezone",
                    "schema": {
                        "type": "string",
                        "default": "Etc/UTC",
                        "required": true,
                        "$ref": [
                            "definitions/timezone"
                        ]
                    }
                },
                {
                    "variable": "minecraft",
                    "label": "",
                    "group": "Minecraft Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "variable": "eula",
                                "label": "EULA",
                                "description": "The EULA for Minecraft",
                                "schema": {
                                    "type": "boolean",
                                    "default": false,
                                    "required": true
                                }
                            },
                            {
                                "variable": "image_selector",
                                "label": "Image Selector",
                                "description": "The image selector for Minecraft",
                                "schema": {
                                    "type": "string",
                                    "default": "image",
                                    "required": true,
                                    "enum": [
                                        {
                                            "value": "j8_image",
                                            "description": "Java 8 HotSpot (Alpine)"
                                        },
                                        {
                                            "value": "j8_j9_image",
                                            "description": "Java 8 OpenJ9 (Debian)"
                                        },
                                        {
                                            "value": "j8_jdk_image",
                                            "description": "Java 8 HotSpot+JDK (Ubuntu)"
                                        },
                                        {
                                            "value": "j8_gce_image",
                                            "description": "Java 8 GraalVM CE (Oracle)"
                                        },
                                        {
                                            "value": "j11_image",
                                            "description": "Java 11 HotSpot (Ubuntu)"
                                        },
                                        {
                                            "value": "j11_j9_image",
                                            "description": "Java 11 OpenJ9 (Debian)"
                                        },
                                        {
                                            "value": "j11_jdk_image",
                                            "description": "Java 11 HotSpot+JDK (Ubuntu)"
                                        },
                                        {
                                            "value": "j17_image",
                                            "description": "Java 17 HotSpot (Ubuntu)"
                                        },
                                        {
                                            "value": "j17_j9_image",
                                            "description": "Java 17 OpenJ9 (Debian)"
                                        },
                                        {
                                            "value": "j17_jdk_image",
                                            "description": "Java 17 HotSpot+JDK (Ubuntu)"
                                        },
                                        {
                                            "value": "j17_gce_image",
                                            "description": "Java 17 GraalVM CE (Oracle)"
                                        },
                                        {
                                            "value": "j17_alpine_image",
                                            "description": "Java 17 HotSpot (Alpine)"
                                        },
                                        {
                                            "value": "j19_image",
                                            "description": "Java 19 HotSpot (Ubuntu)"
                                        },
                                        {
                                            "value": "image",
                                            "description": "Java 21 HotSpot (Ubuntu)"
                                        },
                                        {
                                            "value": "j21_g_image",
                                            "description": "Java 21 GraalVM (Oracle)"
                                        },
                                        {
                                            "value": "j21_alpine_image",
                                            "description": "Java 21 HotSpot (Alpine)"
                                        }
                                    ]
                                }
                            },
                            {
                                "variable": "type",
                                "label": "Type",
                                "description": "The type of Minecraft server to run.</br>\nDepending on the type you select, you might need\nto add additional environment variables. </br>\nhttps://itzg.github.io/docker-minecraft-docs/java/server-types/bukkit-spigot\n",
                                "schema": {
                                    "type": "string",
                                    "default": "VANILLA",
                                    "required": true,
                                    "enum": [
                                        {
                                            "value": "VANILLA",
                                            "description": "Vanilla"
                                        },
                                        {
                                            "value": "SPIGOT",
                                            "description": "Spigot"
                                        },
                                        {
                                            "value": "BUKKIT",
                                            "description": "Bukkit"
                                        },
                                        {
                                            "value": "PAPER",
                                            "description": "Paper"
                                        },
                                        {
                                            "value": "FOLIA",
                                            "description": "Folia"
                                        },
                                        {
                                            "value": "FABRIC",
                                            "description": "Fabric"
                                        },
                                        {
                                            "value": "FORGE",
                                            "description": "Forge"
                                        },
                                        {
                                            "value": "NEOFORGE",
                                            "description": "NeoForge"
                                        },
                                        {
                                            "value": "AUTO_CURSEFORGE",
                                            "description": "CurseForge"
                                        },
                                        {
                                            "value": "MODRINTH",
                                            "description": "Modrinth"
                                        },
                                        {
                                            "value": "FTBA",
                                            "description": "Feed the Beast"
                                        },
                                        {
                                            "value": "PUFFERFISH",
                                            "description": "Pufferfish"
                                        },
                                        {
                                            "value": "PURPUR",
                                            "description": "Purpur"
                                        },
                                        {
                                            "value": "QUILT",
                                            "description": "Quilt"
                                        },
                                        {
                                            "value": "MAGMA",
                                            "description": "Magma"
                                        },
                                        {
                                            "value": "MAGMA_MAINTAINED",
                                            "description": "Magma Maintained"
                                        },
                                        {
                                            "value": "KETTING",
                                            "description": "Ketting"
                                        },
                                        {
                                            "value": "MOHIST",
                                            "description": "Mohist"
                                        },
                                        {
                                            "value": "CATSERVER",
                                            "description": "Catserver"
                                        },
                                        {
                                            "value": "SPONGEVANILLA",
                                            "description": "SpongeVanilla"
                                        },
                                        {
                                            "value": "LIMBO",
                                            "description": "Limbo"
                                        },
                                        {
                                            "value": "CRUCIBLE",
                                            "description": "Crucible"
                                        },
                                        {
                                            "value": "CUSTOM",
                                            "description": "Custom"
                                        }
                                    ]
                                }
                            },
                            {
                                "variable": "version",
                                "label": "Version",
                                "description": "The minecraft version.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/versions/minecraft\n",
                                "schema": {
                                    "type": "string",
                                    "default": "LATEST",
                                    "required": true
                                }
                            },
                            {
                                "variable": "mode",
                                "label": "Game Mode",
                                "description": "The game mode of the Minecraft server.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/gamemode\n",
                                "schema": {
                                    "type": "string",
                                    "default": "survival",
                                    "required": true,
                                    "enum": [
                                        {
                                            "value": "survival",
                                            "description": "Survival"
                                        },
                                        {
                                            "value": "creative",
                                            "description": "Creative"
                                        },
                                        {
                                            "value": "adventure",
                                            "description": "Adventure"
                                        },
                                        {
                                            "value": "spectator",
                                            "description": "Spectator"
                                        }
                                    ]
                                }
                            },
                            {
                                "variable": "server_name",
                                "label": "Server Name",
                                "description": "The name of the Minecraft server.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/servername\n",
                                "schema": {
                                    "type": "string",
                                    "default": "Minecraft Server",
                                    "required": true
                                }
                            },
                            {
                                "variable": "difficulty",
                                "label": "Difficulty",
                                "description": "The difficulty of the Minecraft server.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/difficulty\n",
                                "schema": {
                                    "type": "string",
                                    "default": "easy",
                                    "required": true,
                                    "enum": [
                                        {
                                            "value": "peaceful",
                                            "description": "Peaceful"
                                        },
                                        {
                                            "value": "easy",
                                            "description": "Easy"
                                        },
                                        {
                                            "value": "normal",
                                            "description": "Normal"
                                        },
                                        {
                                            "value": "hard",
                                            "description": "Hard"
                                        }
                                    ]
                                }
                            },
                            {
                                "variable": "seed",
                                "label": "Seed",
                                "description": "The seed for the Minecraft server.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/seed </br>\n(Quotes is handled by the field automatically)\n",
                                "schema": {
                                    "type": "string",
                                    "default": ""
                                }
                            },
                            {
                                "variable": "level_type",
                                "label": "Level Type",
                                "description": "The level type of the Minecraft server.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/#level-type-and-generator-settings\n",
                                "schema": {
                                    "type": "string",
                                    "default": "minecraft:default",
                                    "required": true,
                                    "enum": [
                                        {
                                            "value": "minecraft:default",
                                            "description": "Default"
                                        },
                                        {
                                            "value": "minecraft:flat",
                                            "description": "Flat"
                                        },
                                        {
                                            "value": "minecraft:large_biomes",
                                            "description": "Large Biomes"
                                        },
                                        {
                                            "value": "minecraft:amplified",
                                            "description": "Amplified"
                                        },
                                        {
                                            "value": "minecraft:single_biome_surface",
                                            "description": "Single Biome Surface"
                                        },
                                        {
                                            "value": "buffet",
                                            "description": "Buffet"
                                        },
                                        {
                                            "value": "customized",
                                            "description": "Customized"
                                        }
                                    ]
                                }
                            },
                            {
                                "variable": "motd",
                                "label": "Message of the Day",
                                "description": "The message of the day for the Minecraft server.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/motd\n",
                                "schema": {
                                    "type": "string",
                                    "default": "Welcome to Minecraft on TrueNAS!",
                                    "required": true
                                }
                            },
                            {
                                "variable": "enable_rcon",
                                "label": "Enable RCON",
                                "description": "Enable RCON for the Minecraft server.</br>\nIt is recommended to keep this enabled, as it helps to\nshut down the minecraft server gracefully.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/rcon\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": true
                                }
                            },
                            {
                                "variable": "rcon_password",
                                "label": "RCON Password",
                                "description": "The RCON password for the Minecraft server.",
                                "schema": {
                                    "type": "string",
                                    "default": "",
                                    "show_if": [
                                        [
                                            "enable_rcon",
                                            "=",
                                            true
                                        ]
                                    ],
                                    "private": true,
                                    "required": true
                                }
                            },
                            {
                                "variable": "max_players",
                                "label": "Max Players",
                                "description": "The maximum number of players that can join the server.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/maxplayers\n",
                                "schema": {
                                    "type": "int",
                                    "default": 20,
                                    "min": 1,
                                    "required": true
                                }
                            },
                            {
                                "variable": "max_world_size",
                                "label": "Max World Size",
                                "description": "The maximum possible size in blocks, expressed as a radius.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/maxworldsize\n",
                                "schema": {
                                    "type": "int",
                                    "default": 10000,
                                    "min": 1,
                                    "required": true
                                }
                            },
                            {
                                "variable": "max_build_height",
                                "label": "Max Build Height",
                                "description": "The maximum height in which building is allowed.\nTerrain may still naturally generate above a low height limit.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/maxbuildheight\n",
                                "schema": {
                                    "type": "int",
                                    "default": 256,
                                    "min": 1,
                                    "required": true
                                }
                            },
                            {
                                "variable": "allow_nether",
                                "label": "Allow Nether",
                                "description": "Allows players to travel to the Nether.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/allownether\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": true
                                }
                            },
                            {
                                "variable": "announce_player_achievements",
                                "label": "Announce Player Achievements",
                                "description": "Allows server to announce when a player gets an achievement.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/announceachievements\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": true
                                }
                            },
                            {
                                "variable": "enable_command_block",
                                "label": "Enable Command Block",
                                "description": "Enables the command blocks.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/enablecommandblock\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": false
                                }
                            },
                            {
                                "variable": "force_game_mode",
                                "label": "Force Game Mode",
                                "description": "Force players to join in the default game mode.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/forcegamemode\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": false
                                }
                            },
                            {
                                "variable": "generate_structures",
                                "label": "Generate Structures",
                                "description": "Defines whether structures (such as villages) will be generated.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/generatestructures\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": true
                                }
                            },
                            {
                                "variable": "hardcore",
                                "label": "Hardcore",
                                "description": "If set to true, players will be set to spectator mode if they die.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/hardcore\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": false
                                }
                            },
                            {
                                "variable": "spawn_animals",
                                "label": "Spawn Animals",
                                "description": "Determines if animals will be able to spawn.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/spawnanimals\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": true
                                }
                            },
                            {
                                "variable": "spawn_npcs",
                                "label": "Spawn NPCs",
                                "description": "Determines if villagers will be spawned.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/spawnnpcs\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": true
                                }
                            },
                            {
                                "variable": "spawn_monsters",
                                "label": "Spawn Monsters",
                                "description": "Determines if monsters will be spawned.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/spawnmonsters\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": true
                                }
                            },
                            {
                                "variable": "spawn_protection",
                                "label": "Spawn Protection",
                                "description": "The radius of the spawn protection.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/spawnprotection\n",
                                "schema": {
                                    "type": "int",
                                    "default": 16,
                                    "min": 0,
                                    "required": true
                                }
                            },
                            {
                                "variable": "pvp",
                                "label": "PVP",
                                "description": "Determines if PVP will be enabled.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/pvp\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": true
                                }
                            },
                            {
                                "variable": "allow_flight",
                                "label": "Allow Flight",
                                "description": "Allows users to use flight on your server while in Survival mode,\nif they have a mod that provides flight installed.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/allowflight\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": false
                                }
                            },
                            {
                                "variable": "view_distance",
                                "label": "View Distance",
                                "description": "Sets the amount of world data the server sends the client,\nmeasured in chunks in each direction of the player (radius, not diameter).\nIt determines the server-side viewing distance.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/viewdistance\n",
                                "schema": {
                                    "type": "int",
                                    "default": 10,
                                    "min": 3,
                                    "max": 32,
                                    "required": true
                                }
                            },
                            {
                                "variable": "online_mode",
                                "label": "Online Mode",
                                "description": "If set to true, the server will attempt to authenticate clients\nconnecting to it with the Minecraft account database.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/onlinemode\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": true
                                }
                            },
                            {
                                "variable": "max_tick_time",
                                "label": "Max Tick Time",
                                "description": "The maximum number of milliseconds a single tick may take\nbefore the server watchdog stops the server with the message,\nA single server tick took 60.00 seconds (should be max 0.05);\nConsidering it to be crashed, server will forcibly shutdown.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/maxticktime\n",
                                "schema": {
                                    "type": "int",
                                    "default": 60000,
                                    "min": 0,
                                    "required": true
                                }
                            },
                            {
                                "variable": "ops",
                                "label": "Operators / Administrators",
                                "description": "A list of player names who should be considered operators.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/ops\n",
                                "schema": {
                                    "type": "list",
                                    "default": [],
                                    "items": [
                                        {
                                            "variable": "op_player",
                                            "label": "OP Player",
                                            "schema": {
                                                "type": "string",
                                                "default": "",
                                                "required": true
                                            }
                                        }
                                    ]
                                }
                            },
                            {
                                "variable": "whitelist",
                                "label": "Whitelist",
                                "description": "A list of player names who are allowed to play on the server.</br>\nhttps://itzg.github.io/docker-minecraft-docs/java/configuration/whitelist\n",
                                "schema": {
                                    "type": "list",
                                    "default": [],
                                    "items": [
                                        {
                                            "variable": "white_player",
                                            "label": "Whitelisted Player",
                                            "schema": {
                                                "type": "string",
                                                "default": "",
                                                "required": true
                                            }
                                        }
                                    ]
                                }
                            },
                            {
                                "variable": "additional_envs",
                                "label": "Additional Environment Variables",
                                "description": "Configure additional environment variables for Minecraft.",
                                "schema": {
                                    "type": "list",
                                    "default": [],
                                    "items": [
                                        {
                                            "variable": "env",
                                            "label": "Environment Variable",
                                            "schema": {
                                                "type": "dict",
                                                "attrs": [
                                                    {
                                                        "variable": "name",
                                                        "label": "Name",
                                                        "schema": {
                                                            "type": "string",
                                                            "required": true
                                                        }
                                                    },
                                                    {
                                                        "variable": "value",
                                                        "label": "Value",
                                                        "schema": {
                                                            "type": "string",
                                                            "required": true
                                                        }
                                                    }
                                                ]
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                },
                {
                    "variable": "run_as",
                    "label": "",
                    "group": "User and Group Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "variable": "user",
                                "label": "User ID",
                                "description": "The user id that Minecraft files will be owned by.",
                                "schema": {
                                    "type": "int",
                                    "min": 568,
                                    "default": 568,
                                    "required": true
                                }
                            },
                            {
                                "variable": "group",
                                "label": "Group ID",
                                "description": "The group id that Minecraft files will be owned by.",
                                "schema": {
                                    "type": "int",
                                    "min": 568,
                                    "default": 568,
                                    "required": true
                                }
                            }
                        ]
                    }
                },
                {
                    "variable": "network",
                    "label": "",
                    "group": "Network Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "variable": "server_port",
                                "label": "Server Port",
                                "description": "The port for Minecraft Server",
                                "schema": {
                                    "type": "int",
                                    "default": 25535,
                                    "required": true,
                                    "$ref": [
                                        "definitions/port"
                                    ]
                                }
                            },
                            {
                                "variable": "rcon_port",
                                "label": "RCON Port",
                                "description": "The port for Minecraft RCON",
                                "schema": {
                                    "type": "int",
                                    "default": 25575,
                                    "required": true,
                                    "$ref": [
                                        "definitions/port"
                                    ]
                                }
                            },
                            {
                                "variable": "host_network",
                                "label": "Host Network",
                                "description": "Bind to the host network. It's recommended to keep this disabled.\n",
                                "schema": {
                                    "type": "boolean",
                                    "default": false
                                }
                            },
                            {
                                "variable": "additional_ports",
                                "label": "Additional Ports",
                                "description": "Additional ports for Minecraft.",
                                "schema": {
                                    "type": "list",
                                    "show_if": [
                                        [
                                            "host_network",
                                            "=",
                                            false
                                        ]
                                    ],
                                    "default": [],
                                    "items": [
                                        {
                                            "variable": "port",
                                            "label": "Port",
                                            "schema": {
                                                "type": "dict",
                                                "attrs": [
                                                    {
                                                        "variable": "target",
                                                        "label": "Container Port",
                                                        "description": "The target port for the container.",
                                                        "schema": {
                                                            "type": "int",
                                                            "min": 1,
                                                            "max": 65535,
                                                            "required": true
                                                        }
                                                    },
                                                    {
                                                        "variable": "published",
                                                        "label": "Host Port",
                                                        "description": "The port on the host.",
                                                        "schema": {
                                                            "type": "int",
                                                            "required": true,
                                                            "$ref": [
                                                                "definitions/port"
                                                            ]
                                                        }
                                                    },
                                                    {
                                                        "variable": "protocol",
                                                        "label": "Protocol",
                                                        "description": "The protocol for the port.",
                                                        "schema": {
                                                            "type": "string",
                                                            "required": true,
                                                            "default": "tcp",
                                                            "enum": [
                                                                {
                                                                    "value": "tcp",
                                                                    "description": "TCP"
                                                                },
                                                                {
                                                                    "value": "udp",
                                                                    "description": "UDP"
                                                                }
                                                            ]
                                                        }
                                                    }
                                                ]
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                },
                {
                    "variable": "storage",
                    "label": "",
                    "group": "Storage Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "variable": "data",
                                "label": "Minecraft Data Storage",
                                "description": "The path to store Minecraft Data.",
                                "schema": {
                                    "type": "dict",
                                    "attrs": [
                                        {
                                            "variable": "type",
                                            "label": "Type",
                                            "description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.\n",
                                            "schema": {
                                                "type": "string",
                                                "required": true,
                                                "immutable": true,
                                                "default": "ix_volume",
                                                "enum": [
                                                    {
                                                        "value": "host_path",
                                                        "description": "Host Path (Path that already exists on the system)"
                                                    },
                                                    {
                                                        "value": "ix_volume",
                                                        "description": "ixVolume (Dataset created automatically by the system)"
                                                    }
                                                ]
                                            }
                                        },
                                        {
                                            "variable": "ix_volume_config",
                                            "label": "ixVolume Configuration",
                                            "description": "The configuration for the ixVolume dataset.",
                                            "schema": {
                                                "type": "dict",
                                                "show_if": [
                                                    [
                                                        "type",
                                                        "=",
                                                        "ix_volume"
                                                    ]
                                                ],
                                                "$ref": [
                                                    "normalize/ix_volume"
                                                ],
                                                "attrs": [
                                                    {
                                                        "variable": "acl_enable",
                                                        "label": "Enable ACL",
                                                        "description": "Enable ACL for the storage.",
                                                        "schema": {
                                                            "type": "boolean",
                                                            "default": false
                                                        }
                                                    },
                                                    {
                                                        "variable": "dataset_name",
                                                        "label": "Dataset Name",
                                                        "description": "The name of the dataset to use for storage.",
                                                        "schema": {
                                                            "type": "string",
                                                            "required": true,
                                                            "immutable": true,
                                                            "hidden": true,
                                                            "default": "data"
                                                        }
                                                    },
                                                    {
                                                        "variable": "acl_entries",
                                                        "label": "ACL Configuration",
                                                        "schema": {
                                                            "type": "dict",
                                                            "show_if": [
                                                                [
                                                                    "acl_enable",
                                                                    "=",
                                                                    true
                                                                ]
                                                            ],
                                                            "attrs": []
                                                        }
                                                    }
                                                ]
                                            }
                                        },
                                        {
                                            "variable": "host_path_config",
                                            "label": "Host Path Configuration",
                                            "schema": {
                                                "type": "dict",
                                                "show_if": [
                                                    [
                                                        "type",
                                                        "=",
                                                        "host_path"
                                                    ]
                                                ],
                                                "attrs": [
                                                    {
                                                        "variable": "acl_enable",
                                                        "label": "Enable ACL",
                                                        "description": "Enable ACL for the storage.",
                                                        "schema": {
                                                            "type": "boolean",
                                                            "default": false
                                                        }
                                                    },
                                                    {
                                                        "variable": "acl",
                                                        "label": "ACL Configuration",
                                                        "schema": {
                                                            "type": "dict",
                                                            "show_if": [
                                                                [
                                                                    "acl_enable",
                                                                    "=",
                                                                    true
                                                                ]
                                                            ],
                                                            "attrs": [],
                                                            "$ref": [
                                                                "normalize/acl"
                                                            ]
                                                        }
                                                    },
                                                    {
                                                        "variable": "path",
                                                        "label": "Host Path",
                                                        "description": "The host path to use for storage.",
                                                        "schema": {
                                                            "type": "hostpath",
                                                            "show_if": [
                                                                [
                                                                    "acl_enable",
                                                                    "=",
                                                                    false
                                                                ]
                                                            ],
                                                            "required": true
                                                        }
                                                    }
                                                ]
                                            }
                                        }
                                    ]
                                }
                            },
                            {
                                "variable": "additional_storage",
                                "label": "Additional Storage",
                                "description": "Additional storage for Minecraft.",
                                "schema": {
                                    "type": "list",
                                    "default": [],
                                    "items": [
                                        {
                                            "variable": "storageEntry",
                                            "label": "Storage Entry",
                                            "schema": {
                                                "type": "dict",
                                                "attrs": [
                                                    {
                                                        "variable": "type",
                                                        "label": "Type",
                                                        "description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.</br>\nSMB Share: Is a SMB share that is mounted to as a volume.\n",
                                                        "schema": {
                                                            "type": "string",
                                                            "required": true,
                                                            "default": "ix_volume",
                                                            "immutable": true,
                                                            "enum": [
                                                                {
                                                                    "value": "host_path",
                                                                    "description": "Host Path (Path that already exists on the system)"
                                                                },
                                                                {
                                                                    "value": "ix_volume",
                                                                    "description": "ixVolume (Dataset created automatically by the system)"
                                                                },
                                                                {
                                                                    "value": "cifs",
                                                                    "description": "SMB/CIFS Share (Mounts a volume to a SMB share)"
                                                                }
                                                            ]
                                                        }
                                                    },
                                                    {
                                                        "variable": "read_only",
                                                        "label": "Read Only",
                                                        "description": "Mount the volume as read only.",
                                                        "schema": {
                                                            "type": "boolean",
                                                            "default": false
                                                        }
                                                    },
                                                    {
                                                        "variable": "mount_path",
                                                        "label": "Mount Path",
                                                        "description": "The path inside the container to mount the storage.",
                                                        "schema": {
                                                            "type": "path",
                                                            "required": true
                                                        }
                                                    },
                                                    {
                                                        "variable": "host_path_config",
                                                        "label": "Host Path Configuration",
                                                        "schema": {
                                                            "type": "dict",
                                                            "show_if": [
                                                                [
                                                                    "type",
                                                                    "=",
                                                                    "host_path"
                                                                ]
                                                            ],
                                                            "attrs": [
                                                                {
                                                                    "variable": "acl_enable",
                                                                    "label": "Enable ACL",
                                                                    "description": "Enable ACL for the storage.",
                                                                    "schema": {
                                                                        "type": "boolean",
                                                                        "default": false
                                                                    }
                                                                },
                                                                {
                                                                    "variable": "acl",
                                                                    "label": "ACL Configuration",
                                                                    "schema": {
                                                                        "type": "dict",
                                                                        "show_if": [
                                                                            [
                                                                                "acl_enable",
                                                                                "=",
                                                                                true
                                                                            ]
                                                                        ],
                                                                        "attrs": [],
                                                                        "$ref": [
                                                                            "normalize/acl"
                                                                        ]
                                                                    }
                                                                },
                                                                {
                                                                    "variable": "path",
                                                                    "label": "Host Path",
                                                                    "description": "The host path to use for storage.",
                                                                    "schema": {
                                                                        "type": "hostpath",
                                                                        "show_if": [
                                                                            [
                                                                                "acl_enable",
                                                                                "=",
                                                                                false
                                                                            ]
                                                                        ],
                                                                        "required": true
                                                                    }
                                                                }
                                                            ]
                                                        }
                                                    },
                                                    {
                                                        "variable": "ix_volume_config",
                                                        "label": "ixVolume Configuration",
                                                        "description": "The configuration for the ixVolume dataset.",
                                                        "schema": {
                                                            "type": "dict",
                                                            "show_if": [
                                                                [
                                                                    "type",
                                                                    "=",
                                                                    "ix_volume"
                                                                ]
                                                            ],
                                                            "$ref": [
                                                                "normalize/ix_volume"
                                                            ],
                                                            "attrs": [
                                                                {
                                                                    "variable": "acl_enable",
                                                                    "label": "Enable ACL",
                                                                    "description": "Enable ACL for the storage.",
                                                                    "schema": {
                                                                        "type": "boolean",
                                                                        "default": false
                                                                    }
                                                                },
                                                                {
                                                                    "variable": "dataset_name",
                                                                    "label": "Dataset Name",
                                                                    "description": "The name of the dataset to use for storage.",
                                                                    "schema": {
                                                                        "type": "string",
                                                                        "required": true,
                                                                        "immutable": true,
                                                                        "default": "storage_entry"
                                                                    }
                                                                },
                                                                {
                                                                    "variable": "acl_entries",
                                                                    "label": "ACL Configuration",
                                                                    "schema": {
                                                                        "type": "dict",
                                                                        "show_if": [
                                                                            [
                                                                                "acl_enable",
                                                                                "=",
                                                                                true
                                                                            ]
                                                                        ],
                                                                        "attrs": []
                                                                    }
                                                                }
                                                            ]
                                                        }
                                                    },
                                                    {
                                                        "variable": "cifs_config",
                                                        "label": "SMB Configuration",
                                                        "description": "The configuration for the SMB dataset.",
                                                        "schema": {
                                                            "type": "dict",
                                                            "show_if": [
                                                                [
                                                                    "type",
                                                                    "=",
                                                                    "cifs"
                                                                ]
                                                            ],
                                                            "attrs": [
                                                                {
                                                                    "variable": "server",
                                                                    "label": "Server",
                                                                    "description": "The server to mount the SMB share.",
                                                                    "schema": {
                                                                        "type": "string",
                                                                        "required": true
                                                                    }
                                                                },
                                                                {
                                                                    "variable": "path",
                                                                    "label": "Path",
                                                                    "description": "The path to mount the SMB share.",
                                                                    "schema": {
                                                                        "type": "string",
                                                                        "required": true
                                                                    }
                                                                },
                                                                {
                                                                    "variable": "username",
                                                                    "label": "Username",
                                                                    "description": "The username to use for the SMB share.",
                                                                    "schema": {
                                                                        "type": "string",
                                                                        "required": true
                                                                    }
                                                                },
                                                                {
                                                                    "variable": "password",
                                                                    "label": "Password",
                                                                    "description": "The password to use for the SMB share.",
                                                                    "schema": {
                                                                        "type": "string",
                                                                        "required": true,
                                                                        "private": true
                                                                    }
                                                                },
                                                                {
                                                                    "variable": "domain",
                                                                    "label": "Domain",
                                                                    "description": "The domain to use for the SMB share.",
                                                                    "schema": {
                                                                        "type": "string"
                                                                    }
                                                                }
                                                            ]
                                                        }
                                                    }
                                                ]
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                },
                {
                    "variable": "labels",
                    "label": "",
                    "group": "Labels Configuration",
                    "schema": {
                        "type": "list",
                        "default": [],
                        "items": [
                            {
                                "variable": "label",
                                "label": "Label",
                                "schema": {
                                    "type": "dict",
                                    "attrs": [
                                        {
                                            "variable": "key",
                                            "label": "Key",
                                            "schema": {
                                                "type": "string",
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "value",
                                            "label": "Value",
                                            "schema": {
                                                "type": "string",
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "containers",
                                            "label": "Containers",
                                            "description": "Containers where the label should be applied",
                                            "schema": {
                                                "type": "list",
                                                "items": [
                                                    {
                                                        "variable": "container",
                                                        "label": "Container",
                                                        "schema": {
                                                            "type": "string",
                                                            "required": true,
                                                            "enum": [
                                                                {
                                                                    "value": "minecraft",
                                                                    "description": "minecraft"
                                                                }
                                                            ]
                                                        }
                                                    }
                                                ]
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                },
                {
                    "variable": "resources",
                    "label": "",
                    "group": "Resources Configuration",
                    "schema": {
                        "type": "dict",
                        "attrs": [
                            {
                                "variable": "limits",
                                "label": "Limits",
                                "schema": {
                                    "type": "dict",
                                    "attrs": [
                                        {
                                            "variable": "cpus",
                                            "label": "CPUs",
                                            "description": "CPUs limit for Minecraft.",
                                            "schema": {
                                                "type": "int",
                                                "default": 2,
                                                "required": true
                                            }
                                        },
                                        {
                                            "variable": "memory",
                                            "label": "Memory (in MB)",
                                            "description": "Memory limit for Minecraft.",
                                            "schema": {
                                                "type": "int",
                                                "default": 4096,
                                                "required": true
                                            }
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                }
            ]
        },
        "readme": "<h1>Minecraft</h1> <p><a href=\"https://www.minecraft.net/en-us\">Minecraft</a> is a sandbox game</p> <p>Depending on the <code>Type</code> of server selected, you might need to add additional custom environment variables to the application.</p> <p>More info can be found <a href=\"https://itzg.github.io/docker-minecraft-docs/java/server-types/bukkit-spigot/\">here</a> Select the type on the sidebar.</p> <p>Note that some values are only applicable during the world generation. More info can be found <a href=\"https://itzg.github.io/docker-minecraft-docs/\">here</a></p>",
        "changelog": null,
        "chart_metadata": {
            "app_version": "2025.4.2",
            "capabilities": [
                {
                    "description": "Minecraft is able to chown files.",
                    "name": "CHOWN"
                },
                {
                    "description": "Minecraft is able to bypass permission checks.",
                    "name": "DAC_OVERRIDE"
                },
                {
                    "description": "Minecraft is able bypass permission checks for it's sub-processes.",
                    "name": "FOWNER"
                },
                {
                    "description": "Minecraft is able to set group ID for it's sub-processes.",
                    "name": "SETGID"
                },
                {
                    "description": "Minecraft is able to set user ID for it's sub-processes.",
                    "name": "SETUID"
                },
                {
                    "description": "Minecraft is able to bind to a privileged port.",
                    "name": "NET_RAW"
                }
            ],
            "categories": [
                "games"
            ],
            "changelog_url": "https://github.com/itzg/docker-minecraft-server/releases",
            "date_added": "2024-08-05",
            "description": "Minecraft dedicated server for Java platform hosts a world for multiplayer game.\nPlayers can join the server using the Java client on Desktops.\n",
            "home": "https://www.minecraft.net/en-us",
            "host_mounts": [],
            "icon": "https://media.sys.truenas.net/apps/minecraft/icons/icon.svg",
            "keywords": [
                "world",
                "building"
            ],
            "lib_version": "2.1.16",
            "lib_version_hash": "dac15686f882b9ce65b8549a3d5c0ed7bafe2df7a9028880d1a99b0ff4af1eff",
            "maintainers": [
                {
                    "email": "dev@ixsystems.com",
                    "name": "truenas",
                    "url": "https://www.truenas.com/"
                }
            ],
            "name": "minecraft",
            "run_as_context": [
                {
                    "description": "Minecraft runs as root user.",
                    "gid": 0,
                    "group_name": "root",
                    "uid": 0,
                    "user_name": "root"
                }
            ],
            "screenshots": [],
            "sources": [
                "https://www.minecraft.net/en-us",
                "https://github.com/itzg/docker-minecraft-server"
            ],
            "title": "Minecraft Server (Java)",
            "train": "community",
            "version": "1.12.24"
        }
    }
}


Resources

Support, maintenance, and documentation for applications within the Community catalog is handled by the TrueNAS community. The TrueNAS Applications Portal hosts but does not validate or maintain any linked resources associated with this app.

There currently aren’t any resources available for this application!

Please help the TrueNAS community create content or discuss this application in the TrueNAS Community forum.