TeamTalk服务端部署

在分析TeamTalk的各个服务器代码之前,我们先搭建一套服务端环境,结合之前的客户端,看一下一个IM聊天工具的基本功能。

一、部署环境
系统:centos7 X64位

二,部署步骤
1, 安装git gcc gcc-c++ mysql-devel unzip zip

yum install -y git gcc gcc-c++ mysql-devel unzip zip

2, 下载源码
进入/home目录,下载TeamTalk源码

Git clone https://github.com/mogujie/TeamTalk.git

3, 修改mariadb.sh
进入TeamTalk/server/src目录

cd TeamTalk/server/src

修改mariadb的源,修改如下:

MARIADB_DEVEL=MariaDB-10.0.37-centos73-x86_64-devel 
MARIADB_DEVEL_DOWNLOAD_PATH=https://mirrors.ustc.edu.cn/mariadb/yum/10.0/centos7-amd64/rpms/$MARIADB_DEVEL.rpm 
MARIADB_COMMON=MariaDB-10.0.37-centos73-x86_64-common 
MARIADB_COMMON_DOWNLOAD_PATH=https://mirrors.ustc.edu.cn/mariadb/yum/10.0/centos7-amd64/rpms/$MARIADB_COMMON.rpm 
MARIADB_COMPAT=MariaDB-10.0.37-centos73-x86_64-compat 
MARIADB_COMPAT_DOWNLOAD_PATH=https://mirrors.ustc.edu.cn/mariadb/yum/10.0/centos7-amd64/rpms/$MARIADB_COMPAT.rpm

4, 安装protobuf,hiredis,mariadb,log4cxx
先给sh脚本文件加上运行权限:

Chmod +x make_protobuf.sh
Chmod +x make_hiredis.sh
Chmod +x make_mariadb.sh
Chmod +x make_log4cxx.sh

再执行各个sh脚本,安装第三方库

./make_protobuf.sh
./make_hiredis.sh
./make_mariadb.sh
./make_log4cxx.sh

5, 执行build.sh
编译服务器代码,该脚本中也会有安装cmake, libuuid-devel, openssl-devel, curl-devel:

chmod +x build.sh
./build.sh version 1

6,文件压缩与拷贝
回到上层server目录,将im-server-1.tar.gz(build.sh脚本中打包的)拷贝到…/auto_setup/im_server/目录下

cp im-server-1.tar.gz ../auto_setup/im_server/

回到teamtalk根目录,重命名php文件夹,并压缩,拷贝:

cd ../
mv php tt
zip -q -r tt.zip tt
cp tt.zip ./auto_setup/im_web/

7,配置各个服务器的conf文件
进入auto_setup(cd …/auto_setup)目录,阅读当前目录下的INSTALL.md文件。我们选择按第二种方案来进行配置(公网环境),公网ip和内网ip分别为:

内网ip为:172.16.99.212
公网ip为118.31.108.152

进入im_server\conf目录,修改各个配置文件
(1)dbproxyserver.conf

vim dbproxyserver.conf

修改后的文件对比为:
在这里插入图片描述
(2)fileserver.conf

vim fileserver.conf

修改对比如下:
在这里插入图片描述(3)httpmsgserver.conf

vim httpmsgserver.conf

修改对比如下:
在这里插入图片描述(4)loginserver.conf

vim loginserver.conf

修改对比如下:
在这里插入图片描述(5)msfs.conf

vim msfs.conf

修改对比如下:
在这里插入图片描述(6)msgserver.conf

vim msgserver.conf

修改对比如下:
在这里插入图片描述(7)pushserver.conf

vim pushserver.conf

修改对比如下:
在这里插入图片描述(8)routeserver.conf

vim routeserver.conf

修改对比如下:
在这里插入图片描述
8,回到suto_setup目录,执行自动安装脚本setup.sh

cd ../../
chmod +x setup.sh
./setup.sh install

部署过程中会让输入数据库密码,此处需要输入12345,否则需要修改各个conf文件中对应的数据库密码。

9,查看TeamTalk的进程和端口

ps -ef

可以看到TeamTalk各个服务器的进程和对应开启的端口情况:
在这里插入图片描述10,在浏览器中输入公网ip,进行账号,群组管理端登录
在这里插入图片描述可以使用admin/admin进行登录,登录后进行用户及群组的新增,删除,修改等操作。
在这里插入图片描述

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐