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进行登录,登录后进行用户及群组的新增,删除,修改等操作。

(TeamTalk服务端源码分析一)TeamTalk服务端部署相关推荐

  1. Netty源码分析系列之服务端Channel的端口绑定

    扫描下方二维码或者微信搜索公众号菜鸟飞呀飞,即可关注微信公众号,Spring源码分析和Java并发编程文章. 微信公众号 问题 本文内容是接着前两篇文章写的,有兴趣的朋友可以先去阅读下两篇文章: Ne ...

  2. Dubbo 服务订阅源码分析

    Dubbo 服务引用的时机有两个: 第一个是在 Spring 容器调用 ReferenceBean 的 afterPropertiesSet 方法时引用服务 第二个是在 ReferenceBean 对 ...

  3. 开发 web 程序服务 之 源码分析

    文章目录 开发 web 程序服务 之 源码分析 前言 http 包源码 路由部分 监听和服务部分 mux 库源码 源码分析 创建路由 路由匹配 总结 开发 web 程序服务 之 源码分析 前言 本文的 ...

  4. 基于Java毕业设计校园外卖系统Web端源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计校园外卖系统Web端源码+系统+mysql+lw文档+部署软件 基于Java毕业设计校园外卖系统Web端源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B/S ...

  5. 基于Java毕业设计养老机构服务信息管理源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计养老机构服务信息管理源码+系统+mysql+lw文档+部署软件 基于Java毕业设计养老机构服务信息管理源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B/S ...

  6. 基于Java毕业设计养老智慧服务平台源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计养老智慧服务平台源码+系统+mysql+lw文档+部署软件 基于Java毕业设计养老智慧服务平台源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B/S架构 开 ...

  7. 基于Java毕业设计服务管理系统源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计服务管理系统源码+系统+mysql+lw文档+部署软件 基于Java毕业设计服务管理系统源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B/S架构 开发语言: ...

  8. 基于Java毕业设计业余足球队服务平台源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计业余足球队服务平台源码+系统+mysql+lw文档+部署软件 基于Java毕业设计业余足球队服务平台源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B/S架构 ...

  9. 基于Java毕业设计校园一卡通服务平台源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计校园一卡通服务平台源码+系统+mysql+lw文档+部署软件 基于Java毕业设计校园一卡通服务平台源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B/S架构 ...

  10. 基于Java毕业设计疫情下居家隔离服务系统源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计疫情下居家隔离服务系统源码+系统+mysql+lw文档+部署软件 基于Java毕业设计疫情下居家隔离服务系统源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B ...

最新文章

  1. c++ 类的定义与使用
  2. cp 过程流程图模板_19张必备流程图,收藏
  3. qstring如何初始化_QString介绍
  4. linux开放2280端口,威联通推出适用于NAS/PC的双端口 M.2 2280 PCIe NVMe SSD含双端口2.5GbE扩展卡...
  5. coursera—吴恩达Machine Learning笔记(1-3周)
  6. PowerDesigner导入SQL生成数据模型
  7. jQuery 发送 AJAX 请求
  8. Linux学习之系统编程篇:利用管道进行进程间通信
  9. POJ-1125 Stockbroker Grapevine 最短路
  10. 在Delphi7中调试COM
  11. 感受JTable 与 JTableModel
  12. 最近失业,不知道干什么好,随便乱写,无内容。
  13. C++学习 —— 灵活的继承特性【C++不是玩具,而是生产工具】
  14. java ini文件_java应用监控之prometheus、node export、grafana安装和配置
  15. windows下载和安装gcc编译器(MinGW)及其环境配置(C语言编译环境配置)
  16. echarts地图设置label引导线
  17. Vue开发环境搭建 VsCode
  18. STAF rc = 6
  19. 阿里心电图数据特征分析
  20. C++生成正态分布随机数

热门文章

  1. 全国大学生电子设计竞赛(七)--逆变电源设计
  2. asp与ACCESS数据库的连接及基本操作
  3. 计算机算法分析与设计心得体会,算法设计与分析课程的心得体会
  4. Niagara Networks网络安全出口解决方案
  5. 基于树莓派的AirPlay功能实现
  6. java识别答题卡纸_识别复杂的答题卡的主要算法
  7. WordPress影视主题模板电影下载网站源码
  8. 幻想三国android官方版,幻想三国ol官方版
  9. c语言能编程病毒吗,这个人用C语言写了个简单的“病毒”!
  10. LoadRunner教程(12)-LoadRunner IP欺骗