In this tutorial, we will show you how to run a TeamSpeak server on your Raspberry Pi.
TeamSpeak is one of the most popular VoIP communications systems around with a focus on online gaming.
Even with the rise of competing software like Mumble or Discord, TeamSpeak has managed to keep its popularity.
Its popularity is in large thanks to its low latency, good quality audio with great configurability.
Running a TeamSpeak server on your Raspberry Pi isn’t the simplest of tasks as it is only available as an x86 application.
Thanks to the power of the box86 emulator, we can get your Pi powered TeamSpeak server up and running in no time.
Below is a list of the equipment we used to set our Raspberry Pi as a TeamSpeak Server.
Micro SD Card (8GB+)
Preparing your Raspberry Pi for the TeamSpeak Server
Before installing the TeamSpeak server to your Raspberry Pi, you must do some initial setup work.
These steps mainly involve installing the Box86 emulator so that we can run the server software on our Pi.
1. Before continuing any further with this guide, you need to make sure you have the box86 emulator installed on your system.
We have written up a guide detailing how to install box86 on our website.
box86 is a nifty piece of software that converts x86 instructions to ARM ones that our Pi’s processor can understand.
2. Once you have box86 installed, let us ensure we have an updated system to work off.
You can update your Raspberry Pi by running the following two commands.
sudo apt update sudo apt full-upgrade
3. Finally, we need to install the
jq package to our Pi.
Install this package by using the following command.
sudo apt install jq
While the TeamSpeak software doesn’t require
jq, it makes the process of downloading the latest version straightforward.
Installing the TeamSpeak Server to the Raspberry Pi
With our Raspberry Pi now prepared, we can now install the TeamSpeak Server software to our Raspberry Pi.
1. All we need to do is download the latest x86 Linux version of the server software by using the following command.
wget $(curl -Ls 'https://www.teamspeak.com/versions/server.json' | jq -r '.linux.x86.mirrors | values')
This little one-liner does a few things to make life easier.
First, we retrieve the server.json that contains the version numbers and pass it to the
jq to interpret the JSON data from this file and retrieve the download link for the TeamSpeak server’s latest version.
2. Once the command finishes, download the archive to your device, we can extract it.
To extract the TeamSpeak server to our Raspberry Pi, we can run the following command.
tar xvf teamspeak3-server_linux_x86-*
We use the asterisk(
*) at the end of the command to pick up any archives starting with “
Using the asterisk will allow the command to work with any new version of the archive.
3. As we have extracted the archive, we no longer need it and we should clean up after it.
We can delete the archive by running the following command on your Raspberry Pi.
Running the TeamSpeak Server
Finally, we can move on to getting the TeamSpeak server software running on our Raspberry Pi.
The process is made effortless thanks to the way box86 works. It allows us to run an x86 application like TeamSpeak as if it was a standard ARM program.
1. Change into the directory where we extracted the server software to.
We can change into the directory by running the command below.
2. Before we can run the TeamSpeak server for the first time, you will need to agree to their licensing agreement.
Once you have read through the licensing agreement, you can type in the following command to create the acceptance file.
3. Once you have accepted the license, you can finally run the server software.
Use the command below on your Raspberry Pi to run the TeamSpeak server software.
4. When you first run the TeamSpeak server, you will be presented with a few important bits of information.
The first details provided (1.) are the details for logging in to your TeamSpeak server as a query account. You can use this account to retrieve the details of your TeamSpeak server.
The second token (2.) provided allows you to elevate your regular user to a server admin.
Starting the Server at Boot
For our last section, we will show you how to configure your Raspberry Pi so that it starts the TeamSpeak server at startup.
We do this by creating a service file that will set the working directory and execute the server itself.
1. We can begin writing the file for our service by using the nano text editor.
In the terminal, run the following command to begin writing the service.
sudo nano /etc/systemd/system/teamspeak3.service
2. Within this file, enter the following lines of text.
This text will tell the service manager what file it needs to execute and the directory it needs to work out of.
[Unit] Description=TeamSpeak 3 Server After=network.target [Service] User=pi WorkingDirectory=/home/pi/teamspeak3-server_linux_x86/ ExecStart=/home/pi/teamspeak3-server_linux_x86/ts3server Restart=on-failure [Install] WantedBy=multi-user.target
3. Save the contents of this file by pressing CTRL + X, then Y, followed by the ENTER key.
4. We can now enable our newly created service to start when the system powers on.
All we need to do is run the following command, telling
systemctl to enable the service.
sudo systemctl enable teamspeak3
5. If you would like to start the TeamSpeak server up on your Raspberry Pi now, then you can use the following command.
This command tells the service manager that it should start our service immediately.
sudo systemctl start teamspeak3
Throughout this guide, you will have learned how to install the TeamSpeak server to the Raspberry Pi.
We manage to get this software running by utilizing the powerful box86 emulator.
You should also now have a service created for TeamSpeak so that you can start it and stop it with relative ease.
If you have run into issues with getting the TeamSpeak server to run correctly on the Raspberry Pi, please leave a comment below.
Be sure to check out some of our other server projects for the Raspberry Pi.