TeamSpeak 3 Server Docker image for ARM64 via box64
7.0K
A lightweight and optimized unofficial Docker image to run the TeamSpeak 3 (x86_64) server on ARM64 architectures (such as Raspberry Pi 4/5, Oracle Cloud A1 servers, Apple Silicon, etc.).
Since TeamSpeak does not provide native 64-bit ARM binaries, this image leverages the excellent Box64 emulator to dynamically translate and execute x86_64 instructions with no perceptible performance loss, allowing you to host your voice server anywhere!
Before starting the container, you must accept the TeamSpeak License by setting the TS3SERVER_LICENSE=accept environment variable.
docker run -d \
--name teamspeak3 \
-p 9987:9987/udp \
-p 10011:10011/tcp \
-p 30033:30033/tcp \
-e TS3SERVER_LICENSE=accept \
-e PUID=1000 \
-e PGID=1000 \
-e TIME_ZONE=Europe/Rome \
-v /local/path/data:/teamspeak/save \
--restart unless-stopped \
ramius86/ts3server-arm64:latest
Create a docker-compose.yml file:
services:
teamspeak:
image: ramius86/ts3server-arm64:latest
container_name: teamspeak3
restart: unless-stopped
ports:
- "9987:9987/udp"
- "10011:10011/tcp"
- "30033:30033/tcp"
volumes:
- ./ts3_data:/teamspeak/save
environment:
- TIME_ZONE=Europe/Rome
- PUID=1000
- PGID=1000
- INIFILE=1
- TS3SERVER_LICENSE=accept
Start the container with:
docker compose up -d
To avoid losing your virtual servers, users, permissions, and uploaded files when the container restarts, it is mandatory to mount a local directory inside the container.
| Internal Container Path | Description |
|---|---|
/teamspeak/save | Contains the SQLite database, configuration files, SSH keys, and file transfer folders. |
This image supports several environment variables to customize your installation:
| Variable | Default | Description |
|---|---|---|
TS3SERVER_LICENSE | (Empty) | Required. Set it to accept to agree to the TeamSpeak EULA. |
PUID | 1000 | User ID that will run the processes. |
PGID | 1000 | Group ID that will run the processes. |
TIME_ZONE | UTC | The server timezone (e.g., Europe/Rome). |
INIFILE | 1 | Enables the generation and usage of the ts3server.ini configuration file. |
DEBUG | 0 | Set to 1 to enable verbose logging for troubleshooting. |
The image already includes advanced configuration for the emulator. You can override these if necessary, but it is not recommended:
BOX64_DYNAREC_STRONGMEM=1: Forces stricter memory management to prevent crashes under load.BOX64_LOG=0: Disables verbose Box64 logs for a cleaner Docker output.BOX64_NOBANNER=1: Hides the emulator startup banner.The source code, Dockerfiles, and configuration scripts used to build this image are fully open source and available on GitHub.
If you encounter any issues, want to contribute, or just want to see how the image is built, feel free to visit the repository:
TeamSpeak is a registered trademark of TeamSpeak Systems GmbH. This project is not affiliated, sponsored, or officially supported by TeamSpeak Systems GmbH. The Docker image downloads the official public archive directly during the build phase. It is the end user's responsibility to accept and comply with the TeamSpeak EULA when using the software.
Content type
Image
Digest
sha256:671de4581…
Size
48.9 MB
Last updated
21 days ago
docker pull ramius86/ts3server-arm64:3.13.8-debian-trixie