开源IM项目OpenIM部署流程

一、OpenIM 是什么?

OpenIM ,全称一般叫 OpenIM SDK / OpenIM Server,是一个开源的即时通讯(IM)整体解决方案。它的定位不是一个简单聊天框,而是一个:

💬 可用于商业系统的 IM 基础能力底座

GitHub 地址:

https://github.com/OpenIMSDKhttp://OpenIMSDK

二、核心能力

它支持:

  • 单聊

  • 群聊

  • 好友系统

  • 会话列表

  • 离线消息

  • 多端同步

  • 消息撤回

  • 已读回执

  • 语音/图片/文件

  • WebRTC 音视频(可扩展)

三、优点

  1. 代码全部开源,永久免费

  2. 支持高并发

  3. 社区活跃

  4. Docker 支持

  5. 多端 SDK 很齐全

四、缺点(实话实说)

  1. 部署复杂(微服务 + Kafka)

  2. 运维成本高

  3. 资源占用不小

  4. 文档不算特别清晰(踩坑不少)

  5. 升级版本容易改配置

五、适合什么场景?

适合:

  • 商业IM

  • 需要完整聊天体系

  • 多端同步

  • 有运维能力

不适合:

  • 只是简单聊天

  • 小项目

  • 单服务器轻量需求

六、docker 快速部署

官方提供了快速部署的包:

复制代码
# 我是在/opt目录下执行的
cd /opt
git clone https://github.com/openimsdk/openim-docker

直接运行:

复制代码
cd /openim-docker
docker compose down
docker compose up -d

它用到了非常多的依赖,比如redis\minio\etcd\kafka等等。因此如果你的服务器是干净的话,那下载完镜像就会正常启动了,但是如果你服务器上docker已经运行了部分实例,那得改改docker compose 配置文件。

停止服务:

复制代码
docker compose down

我以redis为例:

我这里有个名为redis的实例,端口占用的是6379。

这个实例又不能删掉。因此我们只能修改openim的配置:

复制代码
vim docker-compose.yaml

首先是修改实例名、然后改相应端口等等。熟悉docker的朋友应该是没什么问题。

操作完基本上就可以正常启动了:

这个是启动健康检查的状态。等待1-2分钟即可:

七、相关默认参数\端口

WebSocket 地址一般是:

ws://你的服务器IP:10001

HTTP API:

http://你的服务器IP:10002

聊天demo:

http://你的服务器IP:11001

相关推荐
冬奇Lab6 小时前
每日一个开源项目(第135篇):codebase-memory-mcp - 给 AI Agent 一张代码库的知识图谱
人工智能·开源·llm
uniquejing14 小时前
《每次 API 调用前扔掉 43% Token,我开源了一个 AI 提示词瘦身工具》
开源
文心快码BaiduComate2 天前
Comate 搭载GLM-5.2:百万上下文,稳定支撑长程任务
前端·程序员·开源
冬奇Lab2 天前
每日一个开源项目(第133篇):EchoBird - 把 AI 工具的安装和部署做成傻瓜操作
人工智能·开源·资讯
下班走回家2 天前
DeepSeek 开源模型的突破与思考:从技术到生态的全面进化
人工智能·开源
ApacheSeaTunnel2 天前
实战演示 | 基于 Apache SeaTunnel 与 Apache DolphinScheduler 实现 MySQL 到 Doris 离线定时增量同步
大数据·mysql·开源·doris·数据集成·seatunnel·数据同步
国产化创客2 天前
ESP32 CameraWebServer 原生摄像头项目全解析
物联网·开源·嵌入式·实时音视频·智能硬件
ofoxcoding3 天前
GLM 5.2 使用教程:API 接入配置、价格说明及 MIT 开源权重发布计划
ai·开源
X54先生(人文科技)3 天前
《元创力》纪实录·卷宗2.2 会议室的裂缝:当“真实高于完美”第一次被写在会议纪要里
人工智能·开源·ai写作·零知识证明
IvorySQL3 天前
PostgreSQL 技术日报 (6月15日)|PG19 性能优化推进,POSETTE 大会倒计时 2 天
数据库·人工智能·postgresql·开源