Current Version: 3.13.7
A docker container to running a teamspeak server with a SQLite database or a MySQL/MariaDB Database.
Run the Teamspeak Server with a SQLite Database.
docker run -d -e TS3SERVER_LICENSE=accept --name="teamspeak_server" -p "9987:9987/udp" -p 10011:10011 -p 30033:30033 solidnerd/teamspeak:3.12.1
To receive this information you need only to run:
docker logs teamspeak_server
Now you should see information like this:
------------------------------------------------------------------
I M P O R T A N T
------------------------------------------------------------------
Server Query Admin Account created
loginname= "serveradmin", password= "superSecret"
------------------------------------------------------------------
------------------------------------------------------------------
I M P O R T A N T
------------------------------------------------------------------
ServerAdmin privilege key created, please use it to gain
serveradmin rights for your virtualserver. please
also check the doc/privilegekey_guide.txt for details.
token=superSecret
------------------------------------------------------------------
- MariaDB Container:
docker run -d --name="teamspeak-mysql" -p 3306:3306 -e MYSQL_ROOT_PASSWORD=secret -e MYSQL_DATABASE=teamspeak -e MYSQL_USER=teamspeak -e MYSQL_PASSWORD=secret mariadb
- Teamspeak Server Container :
docker run -d -e TS3SERVER_LICENSE=accept --name="teamspeak_server" --env-file=.envfile -p "9987:9987/udp" -p 10011:10011 -p 30033:30033 --link teamspeak-mysql:mysql solidnerd/teamspeak:3.12.1
-
Create a shared network:
docker network create teamspeak_nw
-
MariaDB container :
docker run -d --net teamspeak_nw \ -e MYSQL_ROOT_PASSWORD=secret \ -e MYSQL_DATABASE=teamspeak \ -e MYSQL_USER=teamspeak \ -e MYSQL_PASSWORD=secret \ --name="teamspeak-mysql" \ mariadb
-
Create Teamspeak Server Container :
docker run -d -e TS3SERVER_LICENSE=accept --net teamspeak_nw --name="teamspeak_server" -p "9987:9987/udp" -p 10011:10011 -p 30033:30033 solidnerd/teamspeak:3.12.1
Please refer the docker run command options for the --env-file
flag where you can specify all required environment variables in a single file. This will save you from writing a potentially long docker run command. Alternatively you can use docker-compose.
Below is the complete list of available options that can be used to customize your TeamSpeak container.
Environment Variable | Description |
---|---|
TS_USER |
User which owns the teamspeak_server pid. Defaults to teamspeak |
TS_HOME |
Directory of the containing teamspeak file. Defaults to /teamspeak |
LOG_QUERY_COMMANDS |
Directory of the containing teamspeak file. Defaults to 0 |
MACHINE_ID |
Optional name of this server process to identify a group of servers with the same ID. This can be useful when running multiple TeamSpeak 3 Server instances on the same database. Please note that we strongly recommend that you do NOT run multiple server instances on the same SQLite database. Default is not used . |
TS3_LICENSE_PATH |
The physical path where your license file is located. Default is Empty . |
DEFAULT_VOICE_PORT |
UDP port open for clients to connect to. This port is used by the first virtual server, subsequently started virtual servers will open on increasing port numbers Defautls to 9987 |
VOICE_IP |
IP on which the server instance will listen for incoming voice connections. Defaults to 0.0.0.0 |
FILE_TRANSFER_PORT |
TCP Port opened for file transfers. If you specify this parameter, you also need to specify the FILE_TRANSFER_IP envoirment variable! Defautls to 30033 |
FILE_TRANSFER_IP |
IP on which the file transfers are bound to. If you specify this parameter, you also need to specify the FILE_TRANSFER_PORT envoirment variable! Defaults to 0.0.0.0 |
QUERY_PORT |
TCP Port opened for file transfers. If you specify this parameter, you also need to specify the QUERY_IP envoirment variable! Defautls to 10011 |
QUERY_IP |
IP bound for incoming ServerQuery connections. If you specify this parameter, you also need to specify the QUERY_PORT envoirment variable! Defaults to 0.0.0.0 |
QUERY_IP_WHITELIST |
The file containing whitelisted IP addresses for the ServerQuery interface. All hosts listed in this file will be ignored by the ServerQuery flood protection. Defaults to query_ip_whitelist.txt |
QUERY_IP_BLACKLIST |
The file containing backlisted IP addresses for the ServerQuery interface. All hosts listed in this file will be ignored by the ServerQuery flood protection. Defaults to query_ip_blacklist.txt |
LOG_PATH |
The physical path where the server will create logfiles. Defaults to logs/ |
LOG_QUERY_COMMAND |
If set to "1", the server will log every ServerQuery command executed by clients. This can be useful while trying to diagnose several different issues. Defaults to 0 |
DB_CLIENT_KEEP_DAYS |
Defines how many days to keep unused client identities. Auto-pruning is triggered on every start and on every new month while the server is running. Defaults to 30 . |
LOG_APPEND |
If set to "1", the server will not create a new logfile on every start. Instead, the log output will be appended to the previous logfile. The logfile name will only contain the ID of the virtual server. Defaults to 0 . |
QUERY_SKIP_BRUTEFORCE_CHECK |
Defaults to 0 . |
TS3_MARIADB_DB |
Name of the Database. Default to Not Set . |
TS3_MARIADB_USER |
Database User. Default to Not Set . |
TS3_MARIADB_PASS |
Database User Password. Default to Not Set . |
TS3_MARIADB_HOST |
Hostname of the DatabaseServer like localhost Default to Not Set . |
TS3_MARIADB_PORT |
DatabaseServer Port. Default to Not Set . |
TS3SERVER_LICENSE |
Accepts the teamspeak license. Default to Not Set . |
LC_ALL |
Overall locale setting (see Locale). Default to en_US.UTF-8 . |
LANG |
Language locale setting (see Locale). Default to en_US.UTF-8 . |
The MIT License (MIT)
Copyright (c) 2018 Niclas Mietz