banner
Barry

Barry

偶尔摆烂,经常偶尔.
twitter
github
tg_channel
medium
email
steam_profiles

TeamSpeak服务器搭建——基于Docker-Compose

服务器选择#

  • 腾讯云 / 阿里云 等轻量云服务器
  • 优先选择学生优惠香港服务器
  • 系统镜像优先选择 CentOS+Docker 已经配置好的镜像

环境配置#

确认服务器已经安装 Docker 和 Docker-Compose

docker -v
docker-compose -v

如能正常显示版本号,下面这一步直接跳过,否则要手动安装,这里以 CentOS 7 为例安装:

搜索 系统名 安装 docker compose 有很多现成文档

# 安装yum-utils
yum install -y yum-utils

# 配置yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 安装docker-ce
yum install -y docker-ce

# 设置开机启动服务
systemctl enable docker

# 启动服务
systemctl start docker

# 安装epel源
yum install -y epel-release

# 安装docker-compose,如果没有python3会安装python3
yum install -y docker-compose

配置 TeamSpeak#

找到合适的目录新建目录 ts 并切换

个人习惯所有 docker 配置统一放在根目录 /root/data/docker_data 下,具体位置没有强制要求,但是每组配置都应放在一个单独的文件夹下

mkdir -p /root/data/docker_data/ts3  # 创建目录
cd /root/data/docker_data/ts3     # 切换当前目录

新建 docker-compose.yml 文件,粘贴以下内容并保存,文件内容如下(官方镜像 (opens new window)):

# docker-compose.yml

version: '3.1'
services:
  teamspeak:
    image: teamspeak
    restart: always
    ports:
      - 9987:9987/udp # 语音服务
      - 30033:30033   # 文件传输
      - 41144:41144   # DNS域名解析(可选)
      - 10011:10011   # 服务器查询 raw(可选)
      # - 10022:10022   # 服务器查询 SSH(可选)
      # - 10080:10080   # 网络请求 http(可选)
      # - 10443:10443   # 网络请求 https(可选)
    volumes:
      - ./data:/var/ts3server
    environment:
      TS3SERVER_DB_PLUGIN: ts3db_mariadb
      TS3SERVER_DB_SQLCREATEPATH: create_mariadb
      TS3SERVER_DB_HOST: db
      TS3SERVER_DB_USER: root
      TS3SERVER_DB_PASSWORD: password # 数据库密码
      TS3SERVER_DB_NAME: teamspeak
      TS3SERVER_DB_WAITUNTILREADY: 30
      TS3SERVER_LICENSE: accept
  db:
    image: mariadb
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: password  # 数据库密码
      MYSQL_DATABASE: teamspeak
    volumes:
      - ./data/mysql:/var/lib/mysql  # 必需,否则重启镜像后数据丢失

服务器上要使用 vi/vim/nano 编辑文件,如果没有,CentOS 系统使用 yum install nano 类似的指令安装

# [新建文件]
vi docker-compose.yml
# 或
vim docker-compose.yml
# 或
nano docker-compose.yml

# [粘贴] ctrl+v 或 ctrl+shift+v 或 shift+insert

# [保存] vi/vim: ESC :wq Enter

# [保存] nano: ctrl+x

启动服务#

确认当前在 docker-compose.yml 所在的目录,如 cd /data/ts

# 启动服务
docker-compose up

# 启动服务 一直运行 detach
docker-compose up -d

# 关闭服务
docker-compose down

# 重启服务
docker-compose restart

用 TS 客户端连接服务器,会弹出对话框要求输入 token,输入 token 后这个账号就是管理员了

  • 第一次启动时会弹出 Server Query 管理员账号密码 和 token务必妥善保存

  • 第一次如果用 docker-compose up -d 启动,相关日志会保存在 ./data/logs 下

开放规则#

云服务器的防火墙设置页添加如下入站规则:

  • 9987 UDP
  • 30033 TCP
  • 41144 TCP
  • 10011 TCP

ts 官方的端口说明 (opens new window)

域名解析#

  1. 添加一条 A 类型的规则,指向服务器 ip 地址。此处 ts -> xxx.xxx.xxx.xxx 即解析域名 ts.yct.ee

  2. 添加一条 SRV 类型的规则,如图所示:

域名解析

客户端#

客户端官网:https://teamspeak.com/zh-CN/
汉化包:https://github.com/jitingcn/TS3-Translation_zh-CN/releases/latest

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。