服务器部署Teamspeak3

knoci 发布于 2025-02-07 93 次阅读


部署Teamspeak3服务端

什么是Teamspeak

​ TeamSpeak是全球流行的团队语音通讯工具软件(VoIP),常用于游戏、会议团队语音沟通,并提供文字聊天、文件共享功能,所有数据加密传输。

"Teamspeak具有如下特点:" 展开 / 收起
TeamSpeak

​ 如果想要和朋友进行游戏语音开黑,相比于市面上的dis,kook,yy等语音软件,自己在服务器上部署teamspeak,具有延迟更低,数据更安全,语言品质更高,而且完全免费(但是服务器要花钱)的优点


部署和配置

在docker部署

​ docker是一种容器化技术,允许开发者将应用及其依赖打包到一个轻量级、可移植的容器中,然后可以在任何支持Docker的机器上运行这个容器。

​ 总而言之,推荐在服务器上的程序都部署在docker容器中,这样即使故障了也不会对服务器系统环境产生影响,而且还可以很轻松的排查问题以及重新部署。

​ 至于docker的安装就不多说了,既然都有服务器也默认都安装了。我们可以通过下面的指令一键拉取镜像安装

docker run -p 9987:9987/udp -p 10011:10011 -p 10022:10022 -p 10080:10080 -p 10443:10443 -p 30033:30033 -p 41144:41144 -e TS3SERVER_LICENSE=accept -e TS3SERVER_SERVERADMIN_PASSWORD=<your_password> --name="teamspeak-server" -d teamspeak
  • -p:主机端口:容器内部端口,代表程序需要用到的端口,当然云服务器需要放开公网端口的防火墙。关于主机端口和容器内部端口,后续会做解释。
  • -e:运行程序配置的环境变量,这里非常推荐加上 TS3SERVER_SERVERADMIN_PASSWORD=<your_password><your_password> 改为读者自己想要设置的密码,这个在后续找回 ts 服务器权限 token 的时候非常有用,后文会解释这一点。
  • –name:容器名称,方便我们自己管理。
  • -d:在后台运行,退出终端也不会结束进程,相当于 nohup 命令。

​ 如果你发现下载慢或者下载不了,很有可以被墙了。不过如果你是阿里云,腾讯云等大厂云服务器,他们都会有维护自己的docker hub,应该不太可能出现这种问题。如果真的被墙了,可以换源https://docker.1panel.live/,这是1panel的源,使用起来体验很不错,至于怎么换请自行搜索怎么更换docker源。


在1panel部署

​ 在1panel,你可以通过应用上带你很轻易的完成Teamspeak容器的部署。

​ 首先你要安装一个数据库用来存储ts的数据,可以是maria和postgre二选一,这里我们选择maria,在应用商店搜索安装就行,可以不用打开端口外部访问。

image-20241129224106840

img

​ 然后我们去安装Teamspeak,端口参数默认就行,记得打开端口外部访问。

image-20241129224220049


开放端口

​ 下表是ts用到的端口,必填中 是的 的端口必须打开,其他的可以不开。

3d464ad617d14aeba94f0c2947c27b4e

​ 请在实例对应的云服务器厂商开放端口,这里以阿里云为例,注意9987端口开放的是UDP协议,如果开成TCP协议会连不上服务器

2281dc61589f502be0008fa8ca78ade7

​ 如果在linux开启了防火墙,请设置端口放行,以Ubuntu&Debian的ufw为例:

ufw allow 9987
ufw allow 10011
ufw allow 30033

​ 如果在面板(1panel, 宝塔等)设置了WAF,也要设置端口放行。


连接服务器

​ 部署成功后查看容器内日志,可以看到如下内容:

image-20241130150411550

  • loginname用户名,服务器查询用
  • password密码,查数据或者充值找回会用到
  • apikeyapikey
  • tooken连接服务器用

​ 之后拿着Token连接服务器,默认拥有超级管理员身份,如此一来我们的Ts服务器就搭建好了

image-20241130150920224

image-20241130150941610


总结

​ 搭建ts服务器,so easy~