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

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。