# Installation
# Get Started
There is an executable for all three platforms, which runs inside a terminal window. There is no extra webserver like Apache or NGINX needed. However it is recommended to use a reverse proxy because the app does not support HTTPS. Example configuration files can be found here
# Options
The TS3-Manager has optional command line arguments to start with. It is suggested to manually set the secret in a producation environment. This prevents losing the saved login credentials of your TeamSpeak servers if the application gets restarted.
Parameter | Description | Default |
---|---|---|
-p, --port | port the server is listening on | 3000 |
-s, --secret | secret for decrypting and encrypting the token | random value generated on each server start |
-w, --whitelist | comma separated list of TeamSpeak servers you can connect to (ip or domain) | all TeamSpeak servers are allowed |
# Example
/path/to/ts3-manager-executable -p 8080 -s XXX -w 183.23.45.23,myts3server.com
# Windows
Go to Download and download the file for Windows. Run it by double clicking it. On the first startup the windows firewall will probably show you a security alert. Just click on "More informations" and hit "Allow Access". The app should start now as seen in the picture below. Open up a browser of your choice and go to http://localhost:3000 (opens new window).
# macOS
Go to Download and download the file for Mac. Open a terminal and navigate to the downloaded file (e.g. your downloads folder).
cd ./Downloads
Make the file executable.
chmod +x ts3-manager-macos
Run the executable.
./ts3-manager-macos
Open up a browser of your choice and go to http://localhost:3000 (opens new window).
# Linux
Get the direct download url on Sourceforge (Copy the link of the download button). Download the file in your terminal session.
wget https://github.com/joni1802/ts3-manager/releases/download/v2.0.0/ts3-manager-linux-x64-vX.X.X
Make the file executable.
chmod +x start_ts3-manager
Now you can simply run the executable. However the recommended way is to run the application as systemd service.
./start_ts3-manager
# Running as systemd service (recommended)
With systemd (opens new window) you can run the application in the background and enable it to automatically start up when the machine boots.
For security reasons we will create a new user ts3-manager
. This user will run the application.
adduser --system --no-create-home --group --disabled-password ts3-manager
Create a new work directory for the application.
cd /var/www
mkdir /var/www/ts3-manager
Copy the previously downloaded file start_ts3-manager
to the work directory.
cp /path/to/downloaded/file/start_ts3-manager /var/www/ts3-manager/
Add the needed permissions for the user ts3-manager
. The user needs write permissions to create log files.
chown -R ts3-manager:ts3-manager /var/www/ts3-manager
chmod -R 755 /var/www/ts3-manager
Create a systemd service file.
nano /etc/systemd/system/ts3-manager.service
Copy the following content into the file and save it:
[Unit]
Description=TeamSpeak 3 Server Manager
After=network.service
[Service]
User=ts3-manager
Group=ts3-manager
Type=simple
WorkingDirectory=/var/www/ts3-manager/
Environment=PORT=8080
ExecStart=/var/www/ts3-manager/start_ts3-manager
RestartSec=15
Restart=always
StandardOutput=journal
StandardError=inherit
[Install]
WantedBy=multi-user.target
Enable the created unit file.
systemctl enable ts3-manager
Start the application.
systemctl start ts3-manager
Verify if the service is running.
systemctl status ts3-manager
Thanks to dionysius (opens new window), who wrote the systemd unit file. (#11 (opens new window))
# Docker
Pull the latest image from Docker Hub.
docker pull joni1802/ts3-manager
Start the container. Other than the executable the docker image is using the port 8080 by default.
docker run -p 8080:8080 --name ts3-manager joni1802/ts3-manager
# Configuration
The Docker image can be configured via environment variables which are correspondig to the options for the executables.
Environment Variable | Description | Default |
---|---|---|
PORT | port the server is listening on | 8080 |
JWT_SECRET | secret for decrypting and encrypting the token | random value generated on each server start |
WHITELIST | comma separated list of TeamSpeak servers you can connect to (ip or domain) | all TeamSpeak servers are allowed |
# Compose File Example
version: "3.8"
services:
ts3-manager:
image: "joni1802/ts3-manager"
ports:
- 9999:8080
environment:
- WHITELIST=183.23.45.23,myts3server.com
- JWT_SECRET=XXX