TeamTalk编译和部署(一)
1、准备环境:
CentOS7(在虚拟机上会出现一些问题:安装一些软件后,图形化界面会黑屏,本人部署在腾讯云服务器上,可以使用SSH Secure Shell Client等软件远程连接,传输文件)。
2、下载TeamTalk源码(github或者百度网盘均可下载ps:源码写的真的是....通俗易懂(kan bu dong))。
3、将TeamTalk源码传输到CentOS根目录下。修改server\src\db_proxy_server\business\InterLogin.cpp,将文件中的:
if(strOutPass == strResult)
注释掉,这样就可以跳过密码验证了(数据库里的密码是md5加密的,所以为了不必要的麻烦,就这么做)。
4、执行rm -f /var/run/yum.pid 结束更新(如果后台有更新的话)然后:yum -y remove httpd* php* mysql-server mysql mysql-libs php-mysql命令,卸载CentOS上自带的一些软件。
5、安装MySql
详细可参考https://www.cnblogs.com/bigbrotherer/p/7241845.html
感谢大佬给出的安装教程
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server
systemctl start mysqld.service
systemctl status mysqld.service
grep "password" /var/log/mysqld.log
mysql -uroot -p
mysql> set global validate_password_policy=0; mysql> set global validate_password_length=1;
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
mysql>exit
yum -y remove mysql57-community-release-el7-10.noarch
=====================华丽的分割线===================================
正常情况下这么安装就可以了,但是在编译TeamTalk源码的时候可能会报找不到mysql.h的错误,原因在于找不到mysql的头文件,其实只有在完整安装mysql以后,在/usr/local/include下才会有这个文件。
查看mysql已安装和没有安装的依赖:
yum search mysql
然后。。。反正不知道哪些有用,就一口气全装得了。。
yum install search mysql
如果还不行。。就直接到mysql官网下载安装。
之后可以用客户端软件连一下数据库,看看能不能连上。连不上参考网上设置远程连接,并关闭防火墙,关闭方法在下面的7里面。
6、安装redis
可以使用auto_setup里面的脚本安装
7、安装PHP有关的东西
详细可参考http://bbs.qcloud.com/thread-1316-1-1.html
这是腾讯云的教程,感谢大佬
yum install -y httpd php php-fpm
安装好后开启服务即可。
之后关闭防火墙:
systemctl stop firewalld systemctl disable firewalld
然后本机访问服务器ip,看到tomcat页面就好了。
也可以用auto_setup里面的脚本安装
8、进入TeamTalk-master/auto_setup/gcc_setup修改gcc_setup.sh权限为777,然后运行
9、修改一些配置:
进入server/login_server修改loginserver.conf:
msfs=http://192.168.176.130:8700/
discovery=http://192.168.176.130/api/discovery
里面IP地址改为自己的
进入server/msg_server,修改msgserver.conf:
IpAddr1=192.168.176.130(如果存在IpAddr2)也要修改
里面的ip地址改为自己的
进入server/db_proxy_server,修改dbserverproxy.conf里面的mysql的用户名密码为自己的。
10、进入TeamTalk-master/server/src下,找到:
make_protobuf.sh
make_hiredis.sh
make_mariadb.sh
make_log4cxx.sh
这4个文件,由于上面说了,安装了MySql和Redis,所以此处只执行第一个,和最后一个。修改权限777,然后执行。
然后修改auto_setup/mariadb/setup.sh文件里的MYSQL_PASSWORD为自己数据库的密码,执行此文件(需修改权限777)创建数据库。数据库中IMUser表中插入一行记录用于登录。如果创建失败,就是之前文件中数据库信息填写错误。
9、编译整个TeamTalk项目源码。进入TeamTalk-master/server/src下,修改build.sh文件权限777,执行./build.sh version 1命令,如果成功的话,会出现以下效果:
如果出现找不到mysql.sh异常,请参考上面。
10、编译成功以后,返回上级目录,会多出im-server-1.tar.gz文件,复制到/TeamTalk-master/auto_setuo/im_server下
11、执行setup.sh文件(需修改权限为777),执行完成后会看到目录下的.tar.gz文件被解压了。进入解压后的文件,修改login_server下的loginserver.conf中的
msfs=http://127.0.0.1:8700/
discovery=http://127.0.0.1/api/discovery
中的IP地址。
12、进入/TeamTalk-master/auto_setuo/im_server下,修改权限,执行:
./restart.sh db_proxy_server
./restart.sh file_server
./restart.sh msfs
./restart.sh route_server
./restart.sh http_msg_server
./restart.sh login_server
./restart.sh msg_server
命令,到此,编译,部署成功。
在windows客户端中登录:
点击右上角进行设置,设置入上图,使用自己的ip
然后输入刚刚插入数据库的记录中的用户名,密码随便输,点击登录即可。
*******至于PHP页面进行用户管理,还没部署。文件服务file_server也可自行部署启动******
关于php页面功能的部署:
1、将TeamTalk-master目录下的php文件夹复制到auto_setup/im_web下,改名为tt,添加成zip文件。
2、运行次目录下的setup脚本,运行结束后,会在/var/www/html目录下生产tt目录
3、浏览器访问ip地址,见到登录页面即成功。
ps:本人参考了网上的很多教程,研究了几天,填了无数的坑才成功的,教程并不适用于每个人,至于官方的ReadMe文档。。。呵呵。
希望我的教程可以给你提供一点帮助,希望我的教程不会成为你前进道路上的又一个坑。
TeamTalk编译和部署(一)相关推荐
- TeamTalk源码分析(二) —— 服务器端的程序的编译与部署
写在前面的话,如果您在部署teamtalk过程中遇到困难,可以关注我的微信公众号『easyserverdev』,在微信公众号中回复『teamtalk部署求助』,我将与你取得联系并协助您解决.或者您对高 ...
- 手把手教你搭建智能合约测试环境、开发、编译、部署以及如何通过JS调用合约方法
链客,专为开发者而生,有问必答! 此文章来自链客区块链技术问答社区,未经允许拒绝转载. 学习目标 了解智能合约 简单环境搭建 能够利用solidity编写Hello World合约 合约部署 和合约互 ...
- 使用Remix编译和部署以太坊智能合约
链客,专为开发者而生,有问必答! 此文章来自链客区块链技术问答社区,未经允许拒绝转载. 使用Remix编译和部署以太坊智能合约 Remix 是一个开源的 Solidity 智能合约开发环境,提供基本的 ...
- 《ASP.NET 开发从入门到精通》----2.3 编译和部署ASP.NET程序
本节书摘来自异步社区<ASP.NET 开发从入门到精通>一书中的第2章,第2.3节,著 张明星 ,责任编辑 张 涛, 更多章节内容可以访问云栖社区"异步社区"公众号查看 ...
- 基于第三方开源库的OPC服务器开发指南(2)——LightOPC的编译及部署
基于第三方开源库的OPC服务器开发指南(2)--LightOPC的编译及部署 前文已经说过,OPC基于微软的DCOM技术,所以开发OPC服务器我们要做的事情就是开发一个基于DCOM的EXE文件.一个代 ...
- Visual Studio 2013开发 mini-filter driver step by step (2) - 编译,部署,运行
编译driver 一个基本的mini filter项目创建好了以后,就可以编译,部署和运行了,在部署之前,我们要先确定在什么样的系统上运行,我有一台windows 2008 r2拟机,所以我的运行的目 ...
- Spark入门实战系列--2.Spark编译与部署(下)--Spark编译安装
[注]该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取 1.编译Spark Spark可以通过SBT和Maven两种方式进行编译,再通过make-d ...
- vue项目dist编译文件部署到服务器:页面空白、F5刷新报错404、403报错、等等bug - 总结篇
文章目录 问题一. vue编译打包dist文件之后部署到线上服务器 ,访问页面却是空白? 问题二.如果不是空白,页面F5之后就又变成空白? 以Nginx服务器为例,(如下图FTP所示) `404报错: ...
- Nginx实战基础篇一 源码包编译安装部署web服务器
Nginx实战基础篇一 源码包编译安装部署web服务器 版权声明: 本文遵循"署名非商业性使用相同方式共享 2.5 中国大陆"协议 您可以自由复制.发行.展览.表演.放映.广播或通 ...
- 【flink】Flink源码编译:Flink1.11+版本编译及部署
1.概述 转载:Flink源码编译:Flink1.11+版本编译及部署
最新文章
- MXNet动手学深度学习笔记:卷积计算
- Scala数组遍历:使用for和foreach
- SharePoint 2013中修改windows 活动目录(AD)域用户密码的WebPart(免费下载)
- php函数积累第二弹(关于文件操作)
- linux核心的最新版本,求问Linux最新内核版本以及发布日期。
- 宾利为什么卖这么贵?
- ENVI入门系列教程---二、图像分析---10.基于专家知识决策树分类
- Stable Baselines/用户向导/矢量化环境
- html播放mp4不显示画面,浏览器播放mp4格式视频时只有声音看不到画面的原因及解决方法(精)...
- 费马小定理和欧拉定理作业
- 不知道什么工具可以转换图片格式?好用的图片格式转换工具分享
- 山东省软件设计大赛参赛经验
- PrimeNG p-Table 自定义shift多选功能
- 工厂模式总结——三个工厂
- 上课笔记、HTML简介
- 赢在项目工具的落地-讲师团俊平老师主讲
- java求出1~100之间,既是3又是7的倍数的自然数出现的次数?
- 网络工程师高薪就业行业有哪些
- 小程序内识别二维码调查
- java IO流之一 IO流介绍
热门文章
- 杭电OJ系列 刷题顺序
- Nutch开发(一)
- 2016新网商年度盛典,千机网解构新零售
- 2018.10.31国家统计局行政省市区数据and数据库建表
- 新一代报表工具FastReport VCL 6.9发布!
- logo计算机语言,LOGO语言
- fds文件的处理方法
- 最早的支付网关(滴滴支付)和最新的聚合支付设计架构
- thinkpadt410接口介绍_Thinkpad-T410 T410S笔记本左右接口以及硬件设备详细介绍!
- Inno Setup 6.0.3+ 简体中文语言包