{ "1.0.23": { "healthy": true, "supported": true, "healthy_error": null, "location": "/__w/charts/charts/community/terraria/1.0.23", "last_update": "2025-03-05 14:27:33", "required_features": [ "normalize/ixVolume" ], "human_version": "1.4.4.9_1.0.23", "version": "1.0.23", "chart_metadata": { "name": "terraria", "description": "Terraria is a land of adventure! A land of mystery! A land that's yours to shape, defend, and enjoy.", "annotations": { "title": "Terraria" }, "type": "application", "version": "1.0.23", "apiVersion": "v2", "appVersion": "1.4.4.9", "kubeVersion": ">=1.16.0-0", "maintainers": [ { "name": "truenas", "url": "https://www.truenas.com/", "email": "dev@ixsystems.com" } ], "dependencies": [ { "name": "common", "repository": "file://../../../common", "version": "1.2.9" } ], "home": "https://terraria.org/", "icon": "https://media.sys.truenas.net/apps/terraria/icons/icon.png", "sources": [ "https://terraria.org/", "https://github.com/truenas/charts/tree/master/community/terraria", "https://github.com/ryansheehan/terraria" ], "keywords": [ "game", "terraria" ] }, "app_metadata": { "runAsContext": [ { "userName": "root", "groupName": "root", "gid": 0, "uid": 0, "description": "Terraria runs as root user." } ], "capabilities": [], "hostMounts": [] }, "schema": { "groups": [ { "name": "Terraria Configuration", "description": "Configure Terraria" }, { "name": "Network Configuration", "description": "Configure Network for Terraria" }, { "name": "Storage Configuration", "description": "Configure Storage for Terraria" }, { "name": "Resources Configuration", "description": "Configure Resources for Terraria" } ], "questions": [ { "variable": "terrariaConfig", "label": "", "group": "Terraria Configuration", "schema": { "type": "dict", "attrs": [ { "variable": "imageSelector", "label": "Image Selector", "description": "Selects the image to use for the Terraria server.\nTShock is a fork of the Terraria server that adds a number of features.\nVanilla is the original Terraria server. \nOnly applies to newly generated worlds.\n", "schema": { "type": "string", "default": "image", "required": true, "immutable": true, "enum": [ { "value": "image", "description": "TShock" }, { "value": "vanillaImage", "description": "Vanilla" } ] } }, { "variable": "worldName", "label": "World Name", "description": "Sets the world's name.\nOnly applies to newly generated worlds.\n", "schema": { "type": "string", "default": "My-World", "required": true, "immutable": true } }, { "variable": "worldSeed", "label": "World Seed", "description": "Sets the world's seed.\nOnly applies to newly generated worlds.\n", "schema": { "type": "string", "default": "", "immutable": true } }, { "variable": "worldEvil", "label": "World's Evil", "description": "Sets the world's evil state.\nOnly applies to newly generated worlds.\n", "schema": { "type": "string", "default": "random", "required": true, "immutable": true, "enum": [ { "value": "random", "description": "Random" }, { "value": "corrupt", "description": "Corrupt" }, { "value": "crimson", "description": "Crimson" } ] } }, { "variable": "worldSize", "label": "World Size", "description": "Sets the world's size.\nOnly applies to newly generated worlds.\n", "schema": { "type": "string", "default": "small", "required": true, "immutable": true, "enum": [ { "value": "small", "description": "Small (1)" }, { "value": "medium", "description": "Medium (2)" }, { "value": "large", "description": "Large (3)" } ] } }, { "variable": "worldDifficulty", "label": "World Difficulty", "description": "Sets the world's difficulty.\nOnly applies to newly generated worlds.\n", "schema": { "type": "string", "default": "normal", "required": true, "immutable": true, "enum": [ { "value": "normal", "description": "Normal (0)" }, { "value": "expert", "description": "Expert (1)" }, { "value": "master", "description": "Master (2)" }, { "value": "journey", "description": "Journey (3)" } ] } }, { "variable": "maxPlayers", "label": "Maximum Players", "description": "Starts the server with the given player count as the maximum.", "schema": { "type": "int", "default": 8, "min": 1, "max": 255, "required": true } }, { "variable": "password", "label": "Server Password", "description": "Sets the server password.", "schema": { "type": "string", "private": true, "default": "" } }, { "variable": "secure", "label": "Secure Server", "description": "Turns on the base game's \"anti-spam\" feature.", "schema": { "type": "boolean", "default": false } }, { "variable": "forceUpdate", "label": "Force Update", "description": "Forces the server to continue running, and not hibernating when no players are on. \nThis results in time passing, grass growing, and cpu running.\n", "schema": { "type": "boolean", "default": false } }, { "variable": "additionalEnvs", "label": "Additional Environment Variables", "description": "Configure additional environment variables for Terraria.", "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": "additionalArgs", "label": "Additional Arguments", "description": "Configure additional arguments for Terraria. \nValue is optional for flags like -heaptile \nFor example: \nKey: -lang \nValue: en-US\n", "schema": { "type": "list", "default": [], "items": [ { "variable": "arg", "label": "Argument", "schema": { "type": "dict", "attrs": [ { "variable": "key", "label": "Key", "schema": { "type": "string", "required": true } }, { "variable": "value", "label": "Value", "schema": { "type": "string" } } ] } } ] } } ] } }, { "variable": "terrariaNetwork", "label": "", "group": "Network Configuration", "schema": { "type": "dict", "attrs": [ { "variable": "serverPort", "label": "Server Port", "description": "The port for the Terraria Server.", "schema": { "type": "int", "default": 30030, "min": 9000, "max": 65535, "required": true } }, { "variable": "hostNetwork", "label": "Host Network", "description": "Bind to the host network. It's recommended to keep this disabled.\n", "schema": { "type": "boolean", "default": false } } ] } }, { "variable": "terrariaStorage", "label": "", "group": "Storage Configuration", "schema": { "type": "dict", "attrs": [ { "variable": "world", "label": "Terraria World Storage", "description": "The path to store Terraria World.", "schema": { "type": "dict", "attrs": [ { "variable": "type", "label": "Type", "description": "ixVolume: Is dataset created automatically by the system.\nHost Path: Is a path that already exists on the system.\n", "schema": { "type": "string", "required": true, "immutable": true, "default": "ixVolume", "enum": [ { "value": "hostPath", "description": "Host Path (Path that already exists on the system)" }, { "value": "ixVolume", "description": "ixVolume (Dataset created automatically by the system)" } ] } }, { "variable": "datasetName", "label": "Dataset Name", "schema": { "type": "string", "show_if": [ [ "type", "=", "ixVolume" ] ], "required": true, "hidden": true, "immutable": true, "default": "world", "$ref": [ "normalize/ixVolume" ] } }, { "variable": "hostPath", "label": "Host Path", "schema": { "type": "hostpath", "show_if": [ [ "type", "=", "hostPath" ] ], "required": true } } ] } }, { "variable": "plugins", "label": "Terraria Plugins Storage", "description": "The path to store Terraria Plugins.", "schema": { "type": "dict", "attrs": [ { "variable": "type", "label": "Type", "description": "ixVolume: Is dataset created automatically by the system.\nHost Path: Is a path that already exists on the system.\n", "schema": { "type": "string", "required": true, "immutable": true, "default": "ixVolume", "enum": [ { "value": "hostPath", "description": "Host Path (Path that already exists on the system)" }, { "value": "ixVolume", "description": "ixVolume (Dataset created automatically by the system)" } ] } }, { "variable": "datasetName", "label": "Dataset Name", "schema": { "type": "string", "show_if": [ [ "type", "=", "ixVolume" ] ], "required": true, "hidden": true, "immutable": true, "default": "plugins", "$ref": [ "normalize/ixVolume" ] } }, { "variable": "hostPath", "label": "Host Path", "schema": { "type": "hostpath", "show_if": [ [ "type", "=", "hostPath" ] ], "required": true } } ] } } ] } }, { "variable": "resources", "group": "Resources Configuration", "label": "", "schema": { "type": "dict", "attrs": [ { "variable": "limits", "label": "Limits", "schema": { "type": "dict", "attrs": [ { "variable": "cpu", "label": "CPU", "description": "CPU limit for Terraria.", "schema": { "type": "string", "max_length": 6, "valid_chars": "^(0\\.[1-9]|[1-9][0-9]*)(\\.[0-9]|m?)$", "valid_chars_error": "Valid CPU limit formats are\n- Plain Integer - eg. 1\n- Float - eg. 0.5\n- Milicpu - eg. 500m\n", "default": "4000m", "required": true } }, { "variable": "memory", "label": "Memory", "description": "Memory limit for Terraria.", "schema": { "type": "string", "max_length": 12, "valid_chars": "^[1-9][0-9]*([EPTGMK]i?|e[0-9]+)?$", "valid_chars_error": "Valid Memory limit formats are\n- Suffixed with E/P/T/G/M/K - eg. 1G\n- Suffixed with Ei/Pi/Ti/Gi/Mi/Ki - eg. 1Gi\n- Plain Integer in bytes - eg. 1024\n- Exponent - eg. 134e6\n", "default": "8Gi", "required": true } } ] } } ] } } ] }, "app_readme": "
Terraria is a land of adventure! A land of mystery! A land that's yours to shape, defend, and enjoy.
\nThis applies only for the TShock
image.\nOn the first run, you have to check the logs to get the server token. You will find something like this:
text\nLogin before join enabled. Users may be prompted for an account specific password instead of a server password on connect.\nLogin using UUID enabled. Users automatically login via UUID.\nA malicious server can easily steal a user's UUID. You may consider turning this option off if you run a public server.\nTShock Notice: setup-code.txt is still present, and the code located in that file will be used.\nTo setup the server, join the game and type /setup 424041\nThis token will display until disabled by verification. (/setup)
Join the server and run /setup <token>
Terraria is a land of adventure! A land of mystery! A land that's yours to shape, defend, and enjoy.
\nThis applies only for the TShock
image.\nOn the first run, you have to check the logs to get the server token. You will find something like this:
text\nLogin before join enabled. Users may be prompted for an account specific password instead of a server password on connect.\nLogin using UUID enabled. Users automatically login via UUID.\nA malicious server can easily steal a user's UUID. You may consider turning this option off if you run a public server.\nTShock Notice: setup-code.txt is still present, and the code located in that file will be used.\nTo setup the server, join the game and type /setup 424041\nThis token will display until disabled by verification. (/setup)
Join the server and run /setup <token>