Teamtalk IM即时通讯系统部署(CentOS7+LNMP)

背景

最近有任务,要写一个聊天室系统,于是开始寻找开源的参考,看到很多人推荐Teamtalk这个蘑菇街开发并开源的IM系统。于是想部署运行一下,看看效果再开始学习源码和架构。但是服务器的部署算是难道我了,由于这个项目比较复杂,模块较多,还使用了很多开源的工具,所以部署过程需要编译安装很多部分,在不了解整个架构的情况下进行部署很容易出问题。虽然也提供了一键部署脚本,但是由于已经有几年没有人维护了,部署脚本里的很多内容已经失效,centos系统也有了更新,因此有很多问题,我试了很多次都没有成功,着实很浪费时间和精力。最后终于找到一个相对简单也可行的部署方案,这里记录一下。

部署方案

主要参考

部署参考https://dltech21.github.io/2018/04/13/%E6%90%AD%E5%BB%BATeamTalk%E6%9C%8D%E5%8A%A1%E5%99%A8/
主要参考了该链接的方案,使用LNMP一件部署脚本安装Nginx\mysql和php。省区逐个安装配置的麻烦。

问题记录

问题1

开始我使用了官方的仓库
但是在运行./build.sh version 1最后构建服务器的时候会编译报错


Linking CXX executable db_proxy_server /usr/bin/ld: /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libmysqlclient_r.a(client_plugin.c.o): 
undefined reference to symbol 'dlclose@@GLIBC_2.2.5' //usr/lib64/libdl.so.2: error adding symbols: DSO missing from command line collect2: 错误:ld 返回 1

使用的系统环境为镜像CentOS-7-x86_64-DVD-2003.iso,带GUI的服务器方案。

解决1

改用教程里的仓库进行构建即可。

问题2

仅按照教程的方法部署完成后,在客户端输入服务器的IP不会出现php的后台管理系统,而是出现表示LNMP安装成功的界面,也就是说,im_web部分没有被部署成功。这个教程参考的开发者蓝狐的教程链接已经失效,好在我找到了它的网页镜像
从而找到了问题和解决方法。

解决2

前面的教程并没有部署php管理系统。只需要在安装前面的教程部署完毕后,再安装蓝狐的教程16.2修改php,将项目的php文件夹的内容拷贝并替换/home/wwwroot/default这个网站文件夹的内容即可,然后再按照16.3修改一下nginx.conf的配置文件即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
teamtalk安卓源码是一款开源的即时通讯应用程序的源代码。它基于C++和Java开发,具有跨平台的特性,可以在安卓设备上使用。通过对teamtalk安卓源码的剖析,我们可以深入了解其工作原理和实现细节。 首先,在剖析过程中,我们会看到teamtalk安卓源码的整体架构。它主要由客户端和服务器端两部分组成。客户端负责用户界面和交互逻辑的展示,服务器端负责数据存储和通信管理。双方通过TCP/IP协议进行通信。 其次,我们会发现teamtalk安卓源码具有丰富的功能。用户可以注册账号、登录、添加好友、发送文字和语音消息、创建群组等。它支持即时消息的收发、离线消息的存储和推送,还提供了消息撤回和删除的功能。此外,它还支持实时语音和视频通话,可以进行多人会议。 在剖析过程中,我们还会了解其核心技术点。比如,teamtalk安卓源码使用了SQLite数据库进行数据存储,使用了音视频编解码技术来保证语音和视频通话的质量。另外,它采用了高效的网络通信协议和算法,保证了数据的安全性和实时性。 此外,我们也会注意到teamtalk安卓源码的可扩展性和开放性。它提供了丰富的接口和插件机制,允许开发者进行二次开发和定制。开发者可以根据自己的需求,添加新的功能和扩展。 总的来说,通过对teamtalk安卓源码的剖析,我们可以了解到它是一款功能强大、可扩展的即时通讯应用程序。它不仅具有各种基本的通信功能,还提供了高质量的语音和视频通话能力。对于开发者来说,通过深入研究其源码,可以获取到宝贵的经验和技术知识。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值