快速部署开源项目Open-IM-Server
快速部署开源后端项目Open-IM-Server,开源项目地址Open-IM-Server Github开源地址。如果光看本文档步骤,你会发现源码部署视乎步骤比docker-compose少,事实也是如此,步骤少就真的简单吗?那就不一定啦,尽管docker-compose步骤多,大多数都是在修改各种配置文件配置,多数都是替换为自己服务器ip地址,修改后一键启动即可。源码部署你不仅要安装项目所依赖的语言环境,还要安装组件环境,一些组件安装起来是是分麻烦的,远没有docker来的简单方便。
服务器配置要求
Linux 8G运行内存
依赖安装
Open-IM 依赖五大开源高性能组件:ETCD、MySQL、MongoDB、Redis、Kafka。私有化部署Open-IM-Server前,请确保已安装以上五个组件,并检查配置文件中的组件配置参数。如果您的服务器没有上述组件,您必须先安装缺少的组件。如果你有以上组件, 建议直接使用。如果没有,建议使用Docker-compose,不需要安装依赖,更快更方便。
源码部署
安装Go环境 Go environment. 确保 Go 版本至少为 1.15,安装后go version查看是否安装成功。
克隆Open-IM 项目到你的服务器。
git clone https://github.com/OpenIMSDK/Open-IM-Server.git
下载后打开配置文件 config.yaml,然后修改以下参数,127.0.0.1替换为你的服务器IP。
-
检查或修改 Etcd 连接参数。
etcd: etcdAddr: [ 127.0.0.1:2379 ]
-
检查或修改数据库(MySQL)连接参数。
dbUserName和dbPassword为Mysql的账户和密码,默认用户是root,密码是openIM
。mysql: dbAddress: [ 127.0.0.1:3306 ] dbUserName: root dbPassword: openIM
-
检查或修改数据库(MongoDB)连接参数.
如果 dbUserName 和 dbPassword 为空则无身份验证模式,否则有身份验证,连接就需要密码,默认不需要密码
。mongo: dbAddress: [ 127.0.0.1:27017 ] dbUserName: dbPassword:
-
检查或修改Redis连接参数.
如果 dbPassword 为空则无身份验证模式,否则身份验证,默认openIM
。redis: dbAddress: [ 127.0.0.1:6379 ] dbPassWord: openIM
" />
- 检查或修改 Kafka 连接参数。
kafka:
ws2mschat:
addr: [ 127.0.0.1:9092 ]
ms2pschat:
addr: [ 127.0.0.1:9092 ]
构建项目与启动.
-
所有Shell 加可执行权限。
#cd Open-IM-server/scrip chmod +x *.sh
-
执行Shell 构建项目为二进制文件。
./build_all_service.sh
-
Shell一键启动服务
./start_all.sh
-
查看服务是否成功全部启动
ps -aux|grep open_im
Docker部署
所有可使用官方镜像地址: https://hub.docker.com/r/lyt1123/open_im_server
安装Docker Docker版本至少1.13,使用docker version 查看是否安装成功。
安装Docker-compose Docker-compose版本至少1.22,使用docker-compose version查看是否安装成功。
点击下载Redis官方配置文件 下载Redis官方配置文件到 /home/redis/config目录
Redis配置文件修改
-
持续化存储
appendonly no ---> appendonly yes
-
容器启动地址绑定
bind 127.0.0.1 ---->bind 0.0.0.0 或者注释
克隆 Open-IM 项目到你的服务器。
git clone https://github.com/OpenIMSDK/Open-IM-Server.git
打开项目中Docker-compose,然后修改以下参数:127.0.0.1 替换为你的服务器IP.
-
检查或修改 docker-compose Kafka 连接参数。
KAFKA_ZOOKEEPER_CONNECT: 127.0.0.1:2181 KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://127.0.0.1:9092
打开配置文件 config.yaml,修改以下参数,127.0.0.1 替换为你的真实IP.
-
检查或修改 Etcd 连接参数。
etcd: etcdAddr: [ 127.0.0.1:2379 ]
-
检查或修改数据库(MySQL)连接参数。
dbUserName和dbPassword为Mysql的账户和密码,默认用户是root,密码是openIM
mysql: dbAddress: [ 127.0.0.1:3306 ] dbUserName: root dbPassword: openIM
-
检查或修改数据库(MongoDB)连接参数.
如果 dbUserName 和 dbPassword 为空则无身份验证模式,否则有身份验证,连接就需要密码,默认不需要密码
。mongo: dbAddress: [ 127.0.0.1:27017 ] dbUserName: dbPassword:
-
检查或修改Redis连接参数.
如果 dbPassword 为空则无身份验证模式,否则身份验证,默认openIM
。redis: dbAddress: [ 127.0.0.1:6379 ] dbPassWord: openIM
-
检查或修改 Kafka 连接参数。
kafka: ws2mschat: addr: [ 127.0.0.1:9092 ] ms2pschat: addr: [ 127.0.0.1:9092 ]
一键启动docker-compose(Docker自动拉取所有镜像)
docker-compose up -d
查看服务是否全部成功启动
docker-compose ps