Egg Repository

Pterodactyl Community Egg Repository

Teamspeak6 Server

TeamSpeak offers the ideal voice communication for gaming, education and training, internal business communication, and staying in touch with friends and family.

Read Me

TeamSpeak 6 Server

CAUTION

TeamSpeak 6 Server is currently in beta. Expect frequent updates and potential instability

Official Website

TeamSpeak 6 is the next-generation voice communication platform for gaming and communities.

Notice

TeamSpeak 6 Server is currently in beta. Expect frequent updates and potential instability

Server Ports

You can use any available ports. The most important defaults are shown below:

PortDefaultDescription
Voice Port9987Main voice server port
File Transfer Port30033File transfers (Optional/admin)
Query SSH10022Server Query SSH interface (Optional/admin)
Query HTTP10080Server Query HTTP interface (Optional/admin)
Query HTTPS10443Server Query HTTPS interface (Optional/admin)

Notes

  • Admin Rights: On first launch, copy the generated key (token) from the console to claim server admin in your TeamSpeak 6 client.
  • Beta Limits: TeamSpeak 6 server beta is limited to 5 users.
  • Query Interfaces: Enable/disable additional query interfaces (SSH/HTTP/HTTPS) in the server variables.
  • S3 File Transfer: Leave S3 variables blank unless you wish use S3-compatible storage.
  • Certificates: For HTTPS query, upload your cert/key to /home/container and enter the filenames in their variables.
  • More Info: TeamSpeak 6 Beta Announcements

ARM64

  • The ARM64 egg may not perform as expected due to the AMD64 to ARM64 emulaton.
Yolks
NameTag
ghcr.io/ptero-eggs/yolks:debianghcr.io/ptero-eggs/yolks:debian
Variables
NameDescriptionEnvironment VariableDefault ValueUser ViewableUser Editable
Server Query Admin PasswordThe password for the server query admin user.TSSERVER_QUERY_ADMIN_PASSWORDChangeMeYesYes
Server VersionThe version of Teamspeak 3 to use when running the server.TS_VERSIONlatestYesYes
Accept TServer License (required)This is for accepting the licenseTSSERVER_LICENSE_ACCEPTEDacceptYesNo
File Transfer PortThe Teamspeak file transfer port (can be changed).TSSERVER_FILE_TRANSFER_PORT30033YesYes
Enable SSH QueryEnable the SSH query interface (set to 1 to enable).TSSERVER_QUERY_SSH_ENABLED0YesYes
SSH Query PortThe port for the SSH query interface (can be changed).TSSERVER_QUERY_SSH_PORT10022YesYes
Enable HTTP QueryEnable the HTTP query interface (set to 1 to enable).TSSERVER_QUERY_HTTP_ENABLED0YesYes
HTTP Query PortThe port for the HTTP query interface (can be changed).TSSERVER_QUERY_HTTP_PORT10080YesYes
Enable HTTPS QueryEnable the HTTPS query interface (set to 1 to enable).TSSERVER_QUERY_HTTPS_ENABLED0YesYes
HTTPS Query PortThe port for the HTTPS query interface (can be changed).TSSERVER_QUERY_HTTPS_PORT10443YesYes
Enable S3 File TransferEnable S3 file transfer (set to 1 to enable).TSSERVER_S3FT_ENABLED0YesYes
S3 Access KeyS3 Access Key for file transfers.TSSERVER_S3FT_ACCESS_KEYYesYes
S3 Secret KeyS3 Secret Key for file transfers.TSSERVER_S3FT_SECRET_KEYYesYes
S3 BucketS3 Bucket name for file transfers.TSSERVER_S3FT_BUCKETYesYes
S3 DomainS3 Domain/endpoint for file transfers.TSSERVER_S3FT_DOMAINYesYes
S3 RegionS3 region for file transfers.TSSERVER_S3FT_REGIONYesYes
HTTPS Certificate FilenamePlace the certificate file in /home/container and enter the filename here, e.g; ts6_https_cert.pemTSSERVER_QUERY_HTTPS_CERTYesYes
HTTPS Private Key FilenamePlace the private key file in /home/container and enter the filename here, e.g: ts6_https_key.pemTSSERVER_QUERY_HTTPS_PRIVATE_KEYYesYes
Install Script
cd /mnt/server

apt-get update
apt-get install -y jq bzip2

ver="$TS_VERSION"
if [ -z "$ver" ] || [ "$ver" = "latest" ]; then
    json=$(curl -sSL https://api.github.com/repos/teamspeak/teamspeak6-server/releases/latest)
else
    json=$(curl -sSL https://api.github.com/repos/teamspeak/teamspeak6-server/releases/tags/$ver 2>/dev/null)
    if echo "$json" | grep -q "Not Found"; then
        altver=$(echo "$ver" | sed 's/-/\//')
        json=$(curl -sSL https://api.github.com/repos/teamspeak/teamspeak6-server/releases/tags/$altver 2>/dev/null)
    fi
fi

if echo "$json" | grep -q "Not Found"; then
    echo "Not found: $ver"
    exit 1
fi

url=$(echo "$json" | jq -r '.assets | map(select((.name | contains("linux_amd64")) and (.name | endswith(".tar.bz2"))))[0].browser_download_url')

if [ -z "$url" ] || [ "$url" = "null" ]; then
    echo "Not found: $ver"
    exit 1
fi

curl -sSL "$url" | tar xj --strip-components=1
echo "Installed"