{ "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PANEL", "meta": { "version": "PLCN_v1", "update_url": null }, "exported_at": "2025-07-05T17:46:50+00:00", "name": "Teamspeak6 Server", "author": "161775222+JoanFo1456@users.noreply.github.com", "uuid": "a6993632-ecbf-4036-9caa-12ffeff50a4a", "description": "VoIP software designed with security in mind, featuring crystal clear voice quality, endless customization options, and scalabilty up to thousands of simultaneous users.", "tags": [ "voice" ], "features": [], "docker_images": { "Debian": "ghcr.io\/parkervcp\/yolks:debian" }, "file_denylist": [], "startup": ".\/tsserver --filetransfer-port {{TSSERVER_FILE_TRANSFER_PORT}} --query-http-port {{TSSERVER_QUERY_HTTP_PORT}} --query-ssh-port {{TSSERVER_QUERY_SSH_PORT}} --default-voice-port {{SERVER_PORT}}", "config": { "files": "{}", "startup": "{\r\n \"done\": \"listening on 0.0.0.0:\"\r\n}", "logs": "{}", "stop": "^C" }, "scripts": { "installation": { "script": "#!\/bin\/ash\r\n\r\nset -euo pipefail\r\n\r\nREPO=\"teamspeak\/teamspeak6-server\"\r\nARCH=\"linux_amd64\"\r\nTARGET_DIR=\"\/mnt\/server\"\r\n\r\n\r\ngh_api() {\r\n curl -sL \"$1\"\r\n}\r\n\r\nif [ -z \"${TS_VERSION:-}\" ] || [ \"${TS_VERSION}\" = \"latest\" ]; then\r\n echo \"\u25ba Fetching latest Teamspeak 6 release info from GitHub\u2026\"\r\n RELEASE_JSON=\"$(gh_api \"https:\/\/api.github.com\/repos\/${REPO}\/releases\" | jq '.[0]')\"\r\nelse\r\n echo \"\u25ba Fetching release info for tag v${TS_VERSION}\u2026\"\r\n RELEASE_JSON=\"$(gh_api \"https:\/\/api.github.com\/repos\/${REPO}\/releases\" \\\r\n | jq --arg tag \"v${TS_VERSION}\" -c '[.[] | select(.tag_name==$tag)][0]')\"\r\nfi\r\n\r\nASSET_URL=\"$(echo \"$RELEASE_JSON\" \\\r\n | jq -r --arg arch \"$ARCH\" '.assets[]\r\n | select(.name | test(\"linux_amd64.*\\\\.tar\\\\.bz2$\"))\r\n | .browser_download_url')\"\r\n\r\nif [ -z \"$ASSET_URL\" ] || [ \"$ASSET_URL\" = \"null\" ]; then\r\n echo \"\u2717 No linux_amd64 tarball found in this release.\"\r\n exit 1\r\nfi\r\n\r\necho \"\u25ba Downloading and extracting: $ASSET_URL\"\r\n\r\ncd \"$TARGET_DIR\"\r\ngh_api \"$ASSET_URL\" | tar -xvj --strip-components=1\r\n", "container": "ghcr.io\/parkervcp\/installers:alpine", "entrypoint": "ash" } }, "variables": [ { "name": "Query Port", "description": "The Teamspeak Query Port", "env_variable": "QUERY_PORT", "default_value": "10011", "user_viewable": true, "user_editable": true, "rules": [ "required", "integer", "between:1025,65535" ], "sort": 3 }, { "name": "Server Version", "description": "The version of Teamspeak 6 to use when running the server.\nAlso used on reinstall.", "env_variable": "TS_VERSION", "default_value": "latest", "user_viewable": true, "user_editable": true, "rules": [], "sort": 1 }, { "name": "Tsserver Default Port", "description": "The server default port", "env_variable": "TSSERVER_DEFAULT_PORT", "default_value": "9987", "user_viewable": true, "user_editable": true, "rules": [ "required", "integer", "between:1024,65535" ], "sort": 6 }, { "name": "Tsserver File Transfer Port", "description": "The Teamspeak file transfer port", "env_variable": "TSSERVER_FILE_TRANSFER_PORT", "default_value": "30033", "user_viewable": true, "user_editable": true, "rules": [ "required", "integer", "between:1025,65535" ], "sort": 2 }, { "name": "Tsserver License Accepted", "description": "If you accept the license or want to view it.\n(Values: accept, view)", "env_variable": "TSSERVER_LICENSE_ACCEPTED", "default_value": "accept", "user_viewable": true, "user_editable": true, "rules": [ "required", "string", "max:12" ], "sort": 7 }, { "name": "Tsserver Query Http Port", "description": "TCP Port opened for ServerQuery connections using http", "env_variable": "TSSERVER_QUERY_HTTP_PORT", "default_value": "10080", "user_viewable": true, "user_editable": true, "rules": [ "required", "integer", "between:1025,65535" ], "sort": 5 }, { "name": "Tsserver Query ssh Port", "description": "TCP Port opened for ServerQuery connections using SSH", "env_variable": "TSSERVER_QUERY_SSH_PORT", "default_value": "10022", "user_viewable": true, "user_editable": true, "rules": [ "required", "integer", "between:1025,65535" ], "sort": 4 } ] }