前言
- DuckChat是一款基于IRC协议的在线聊天软件,具有简单易用、安全性高、支持多语言等特点。
- 它可以让用户加入不同的聊天室,与其他用户进行实时聊天,并支持私聊、文件传输、表情等功能。
- DuckChat还提供了多种主题和界面风格,用户可以根据自己的喜好进行个性化设置
- DuckChat的官方网站和Github页面都已经很久没有更新了,因此可以推测该软件可能已经停止维护了。但是,DuckChat的源代码是开放的,用户可以自己进行修改和维护。
- chatchat的下载地址:DuckChat: DuckChat 是一款开源、可私有部署的即时通讯IM系统,类似于私人部署的微信,是基于开源阿卡信的升级优化版本,增强了用户对自定义业务的支持,并且能够支持全端客户端 (gitee.com)https://gitee.com/mirrors/DuckChat?_from=gitee_search
一、环境准备
主机名 | IP地址 | 配置 | 系统 |
duckchat | 192.168.1.10 | 1CPU1G内存 | centos7.5 |
# 配置阿里镜像源
[root@duckchat ~]# rm -rf /etc/yum.repos.d/*
[root@duckchat ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
[root@duckchat ~]# wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
# 修改主机名
[root@localhost ~]# hostnamectl set-hostname duckchat
[root@localhost ~]# bash
# 修改IP地址
[root@duckchat ~]# nmcli connection modify eth0 ipv4.method manual ipv4.addresses 192.168.1.10/24 ipv4.gateway 192.168.1.254 ipv4.dns
192.168.1.254 connection.autoconnect yes
[root@duckchat ~]# nmcli connection up eth0
# 关闭selinux和卸载防火墙
[root@duckchat ~]# sed -i '/^SELINUX=/s/enforcing/disabled/' /etc/selinux/config
[root@duckchat ~]# setenforce 0
[root@duckchat ~]# yum -y remove firewall*
二、nginx配置
①、安装nginx
- nginx下载官网:nginx: download
# 下载nginx源码包
[root@duckchat ~]# wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
# 安装编译依赖包
[root@duckchat ~]# yum -y install openssl-devel pcre-devel gcc make
[root@duckchat ~]# tar -xf nginx-1.24.0.tar.gz
[root@duckchat ~]# cd nginx-1.24.0/
# 编译安装
[root@duckchat nginx-1.24.0]# ./configure --with-http_ssl_module && make && make install
②、开启脚本解析功能(php-fpm)
# 修改nginx的配置文件
[root@duckchat nginx-1.24.0]# cd /usr/local/nginx/
# 修改65到71行的内容
[root@duckchat nginx]# vim conf/nginx.conf
65 location ~ \.php$ {
66 root html;
67 fastcgi_pass 127.0.0.1:9000;
68 fastcgi_index index.php;
69 # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
70 include fastcgi.conf;
71 }
# 启动nginx
[root@duckchat nginx]# sbin/nginx
# 查看端口80是否开启
[root@duckchat nginx]# netstat -utnlp | grep 80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 4872/nginx: master
三、安装php
- duckchat的网页不支持php5,支持php7
- 由于centos7默认只提供php5版本,所有需要安装webtatic源(webtatic提供php7)
- webtatic官网:Webtatic.com
# 安装webtatic
[root@duckchat ~]# yum -y install https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
# 安装php72
[root@duckchat ~]# yum -y install php72w php72w-mysql php72w-fpm php72w-devel
# 开启php-fpm并设置开机自启
[root@duckchat ~]# systemctl enable php-fpm.service --now
Created symlink from /etc/systemd/system/multi-user.target.wants/php-fpm.service to /usr/lib/systemd/system/php-fpm.service.
# 查看是否开启9000端口
[root@duckchat ~]# netstat -utnlp | grep 9000
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 5002/php-fpm: maste
四、安装mysql
# 下载MySQL的tar包
[root@duckchat ~]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.17-1.el7.x86_64.rpm-bundle.tar
# 解压mysql
[root@duckchat ~]# mkdir mysql
[root@duckchat ~]# tar -xf mysql-5.7.17-1.el7.x86_64.rpm-bundle.tar -C mysql
[root@duckchat ~]# cd mysql/
# 删除测试软件包
[root@duckchat mysql]# rm -rf mysql-community-server-minimal-5.7.17-1.el7.x86_64.rpm
# 安装mysql
[root@duckchat mysql]# yum -y install ./*.rpm
# 开启mysql并设置开机自启
[root@duckchat mysql]# systemctl enable mysqld --now
# 查看mysql的初始密码
[root@duckchat mysql]# grep -i password /var/log/mysqld.log
2023-05-26T10:42:19.803067Z 1 [Note] A temporary password is generated for root@localhost: .:)kY%o,4-ro //'.:)kY%o,4-ro'是初始密码
# 登录mysql
[root@duckchat mysql]# mysql -uroot -p'.:)kY%o,4-ro'
# 修改密码
mysql> alter user root@"localhost" identified by "123qqq...A";
# 创建所有主机都能登录的root
mysql> grant all on *.* to root@"%" identified by "123qqq...A";
mysql> exit
五、上线duckchatweb页面
# 安装git和解压工具
[root@duckchat ~]# yum -y install git unzip
# git拉取源代码
[root@duckchat ~]# git clone https://gitee.com/mirrors/DuckChat.git
[root@duckchat ~]# cd DuckChat/
# 解压文件
[root@duckchat DuckChat]# unzip 1.1.7.zip
# 把duckchat网页文件复制nginx的网页根路径下
[root@duckchat DuckChat]# cp -r mirrors-DuckChat-master/DuckChat/src/* /usr/local/nginx/html/
# 配置权限
[root@duckchat DuckChat]# chmod -R 777 /usr/local/nginx/html
六、安装duckchat
浏览器访问:192.168.1.10/index.php
- 如果出现这个情况,就敲下面的命令
- 如果还是不行就多敲几遍
[root@duckchat ~]# chmod -R 777 /usr/local/nginx/html
- 输入自己设置的账号和密码
- 现在你可使用自己的搭建的聊天平台
补充
- duckchat只能用电脑来访问,暂不支持手机端访问,这是他的缺点
- duckchat采用的是LNMP结构