Open Source Instant Messaging (IM) Project OpenIM Source Code

OSDU(Open Subsurface Data Universe,开放地下数据空间 / 开源地下数据生态系统) OSDU是由油气行业与云厂商共建的开源、云原生数据平台规范,旨在解决勘探开发领域数据孤岛、格式不统一、应用绑定等问题。其核心是“数据与应用解耦”,通过统一元数据模型、API及权限体系,实现跨云、跨项目的数据互通。平台支持地震、井筒、储层等专业数据管理,配套OpenVDS、ETP等标准,适配PB级体数据,支撑AI训练与数字孪生。虽为参考实现,非即用系统,但已成国际油气数字化底座趋势,国内三桶油正推进试点与国产化适配。 阅读详情

Deploying OpenIM involves multiple components and supports various methods, including source code, Docker, and Kubernetes. This requires ensuring compatibility between different deployment methods while effectively managing differences between versions. Indeed, these are complex issues involving in-depth technical details and precise system configurations. Our goal is to simplify the deployment process while maintaining the system’s flexibility and stability to suit different users’ needs. Currently, version 3.5 has simplified the deployment process, and this version will be maintained for a long time. We welcome everyone to use it.

  1. Environment and Component Requirements
    🌐 Environmental Requirements
    Note Detailed Description
    OS Linux system
    Hardware At least 4GB of RAM
    Golang v1.19 or higher
    Docker v24.0.5 or higher
    Git v2.17.1 or higher
    Storage Component Requirements
    Storage Component Recommended Version
    MongoDB v6.0.2 or higher
    Redis v7.0.0 or higher
    Zookeeper v3.8
    Kafka v3.5.1
    MySQL v5.7 or higher
    MinIO Latest version
  2. Deploying OpenIM Server (IM)
    2.1 Setting OPENIM_IP

If the server has an external IP

export OPENIM_IP=“external IP”

If only providing internal network services

export OPENIM_IP=“internal IP”
2.2 🏗️ Deploying Components (mongodb/redis/zookeeper/kafka/MinIO, etc.)
git clone https://github.com/OpenIMSDK/open-im-server && cd open-im-server

It’s recommended to switch to release-v3.5 or later release branches

make init && docker compose up -d
2.3 🛠️ Compilation
make build
2.4 Starting/Stopping/Checking

Start

make start

Stop

make stop

Check

make check
3. Deploying App Server (Chat)
3.1 🏗️ Deploying Components (mysql)

Go back to the previous directory

cd …

Clone the repository, recommended to switch to release-v1.5 or later release branches

git clone https://github.com/OpenIMSDK/chat chat && cd chat

Deploy mysql

docker run -d --name mysql2 -p 13306:3306 -p 33306:33060 -v “$(pwd)/components/mysql/data:/var/lib/mysql” -v “/etc/localtime:/etc/localtime” -e MYSQL_ROOT_PASSWORD=“openIM123” --restart always mysql:5.7
3.2 🛠️ Compilation
make init
make build
3.3 Starting/Stopping/Checking

Start

make start

Stop

make stop

Check

make check
4. Quick Validation
Open Ports
IM Ports
TCP Port Description Action
TCP:10001 ws protocol, messaging port, for client SDK Allow port
TCP:10002 API port, like user, friend, group, message interfaces Allow port
TCP:10005 Required when choosing MinIO storage (OpenIM defaults to MinIO storage) Allow port
Chat Ports
TCP Port Description Action
TCP:10008 Business system, like registration, login, etc. Allow port
TCP:10009 Management backend, like statistics, account banning, etc. Allow port
PC Web and Management Backend Frontend Resource Ports
TCP Port Description Action
TCP:11001 PC Web frontend resources Allow port
TCP:11002 Management backend frontend resources Allow port
Grafana Port
TCP Port Description Action
TCP:13000 Grafana port Allow port
Verification
PC Web Verification
Note: Enter http://ip:11001 in your browser to access the PC Web. This IP should be the server’s OPENIM_IP to ensure browser accessibility. For first-time use, please register using your mobile phone number, with the default verification code being 666666.
在这里插入图片描述

Image: PC Web Interface Example

App Verification
Scan the following QR code or click here to download.

Download App
Image: App Download QR Code

Note: Double-click on OpenIM and change the IP to the server’s OPENIM_IP then restart the App. Please ensure related ports are open, and restart the App after making changes. For first-time use, please register first through your mobile phone number, with the default verification code being 666666.

在这里插入图片描述

Image: Server Address Modification - Step 1
在这里插入图片描述

Image: Server Address Modification - Step 2

  1. Modifying Configuration Items
    5.1 🛠️ Modifying Shared Configuration Items
    Configuration Item Files to be Modified Action
    mongo/kafka/minio related .env, openim-server/config/config.yaml Restart components and IM
    redis/zookeeper related .env, openim-server/config/config.yaml, chat/config/config.yaml Restart components, IM, and Chat
    SECRET openim-server/config/config.yaml, chat/config/config.yaml Restart IM and Chat
    5.2 🔄 Modifying Special Configuration Items
    Special configuration items: API_OPENIM_PORT/MINIO_PORT/OPENIM_IP/GRAFANA_PORT

Modify the special configuration items in the .env file
Modify the configuration in openim-server/config/config.yaml according to the rules
Modify the configuration in chat/config/config.yaml according to the rules
Restart IM and Chat
5.3 🛠️ Modifying Other Configuration Items
For other configuration items in .env, chat/config/config.yaml, and openim-server/config/config.yaml, you can modify these items directly in the respective files.

5.4 Modifying Ports
Note that for any modification of IM-related ports, it’s necessary to synchronize the changes in open-im-server/scripts/install/environment.sh.

  1. Frequently Asked Questions
    6.1 📜 Viewing Logs
    Runtime logs: logs/OpenIM.log.all.*
    Startup logs: output/logs/openim*.log
    6.2 Startup Order
    The startup order is as follows:

Components IM depends on: mongo/redis/kafka/zookeeper/minio, etc.
IM
Components Chat depends on: mysql
Chat
6.3 Docker Version
The new version of Docker has integrated docker-compose.
Older versions of Docker might not support the gateway feature. It’s recommended to upgrade to a newer version, such as 23.0.1.
7. About OpenIM
Thanks to widespread developer support, OpenIM maintains a leading position in the open-source instant messaging (IM) field, with the number of stars on Github exceeding 12,000. In the current context of increasing attention to data and privacy security, the demand for IM private deployment is growing, which aligns with the rapid development trend of China’s software industry. Especially in government and enterprise sectors, with the rapid development of information technology and the widespread application of innovative

industries, the demand for IM solutions has surged. Further, the continuous expansion of the collaborative office software market has made “secure and controllable” a key attribute.

Repository address: https://github.com/openimsdk
在这里插入图片描述

【项目实战】开源的即时通讯组件OpenIM入门介绍 IM,是即时通讯(Instant Messaging,简称 IM)OpenIM,是一个开源的、强大的即时通讯组件。OpenIM,提供了完整的即时通讯服务功能。OpenIM,被设计为高并发、高可用、易于扩展的架构。OpenIM,适合构建企业级的即时通讯平台。OpenIM,由一群热爱开源技术的开发者创建。OpenIM,旨在提供一个高性能、稳定、易用的即时通讯解决方案。OpenIM,是由IM技术专家打造的开源的即时通讯组件。 阅读详情

相关推荐

MoveIt避障规划实战:从点云到OctoMap的环境感知全流程

本文详细解析了MoveIt避障规划中从点云到OctoMap的环境感知全流程,重点介绍了深度相机选型、点云数据处理、OctoMap生成及避障规划参数调优等关键技术。通过实战案例展示了如何利用MoveIt和OctoMap实现机械臂在复杂环境中的高效避障,为工业自动化和服务机器人开发提供实用解决方案。

weixin_30417487的博客 569

OpenIM Server离线部署方案:无互联网环境下的IM系统

企业内网、涉密环境等无互联网场景下部署即时通讯(Instant Messaging, IM)系统面临三大核心挑战:**外部依赖获取困难**、**配置项复杂**、**部署流程繁琐**。本方案基于OpenIM Server v3.5+版本,提供从环境准备到系统验证的全流程离线部署指南,采用Docker容器化方案确保环境一致性,通过预下载资源包和配置模板实现"零联网"部署。 **读完本文你将掌握:**...

gitblog_00801的博客 581

SpringBoot 自定义注解来实现动态切换数据源

/ 初始化数据源@Override@Inherited@Pointcut(“@annotation(包名.aop.DataSource)”) public void@Pointcut 注解定义了一个切点,名称为 dynamicDataSource。@annotation(包名.aop.DataSource) 表示这个切点匹配所有带有 @DataSource 注解的方法。

晴天飛 雪的博客 1838

openfire开源IM服务器知识分享+社交app实战

一、概述 Openfire最主要的功能是实现XMPP服务器,简单来说,openfire为我们提供一个固定的地址,我们只需要向openfire服务器发送标准的XMPP信息(即XML文件流),那么openfire服务器应当给予我们回应,这里的openfire服务器也可以看做一个容器,我们在聊天时,需要在这个服务器上注册一个会话,在会话存在的时间,我们可以实现即时聊天的一些常用功能,比如建...

专注移动开发 1948

【吃瓜教程】周志华西瓜书课后习题第一章答案

第一章 1.1表1.1中若只包含编号为1和4的两个样例,试给出相应的版本空间。 编号 色泽 根蒂 敲声 好瓜(标记) 1 青绿 蜷缩 浊响 是Y 4 乌黑 稍蜷 沉闷 否N 知识储备: 假设空间: 所有假设组成的空间 版本空间:与训练集一致的假设集合 从假设空间到版本空间算法大致如下: 1.删除与正例不一致的假设且删除与反例一致的假设 2.删除与正例不一致的假设 3.删除与反例一致的假设 具体选择哪种

MaxQuYY的博客 8370

手把手教你学Simulink--移动机器人多轮协同场景实例:基于Simulink的双轮差速PMSM轮毂电机协同驱动仿真

本文介绍了基于Simulink的双轮差速PMSM轮毂电机协同驱动仿真系统。针对移动机器人存在的电机参数不一致、负载分配不均等问题,提出主从同步+力矩补偿的协同控制策略。通过搭建包含运动学模型、PMSM电机模型和矢量控制器的仿真系统,实现了速度同步误差<0.005m/s、轨迹跟踪误差<0.8cm、能耗降低12.5%的优化效果。文章详细阐述了建模步骤、核心算法实现和性能验证,为移动机器人动力系统设计提供了实用参考方案。

MHD0815的博客 133

IM协议介绍

转自:http://ghj19850926.blog.163.com/blog/static/185915602011102254418599/ 目录 编写目的 调研方向 协议比较 融合通讯架构 多媒体融合通讯平台 互联网点击呼叫架构 方案/产品介绍 商业产品 IBM Lotus Domino Sametime 上海恒聚ICM 微软L

AresCJ的专栏 8574

使用MATLAB的COMSOL LiveLink:实时连接和数据传输

COMSOL LiveLink是一种功能强大的MATLAB工具包,它允许用户在MATLAB环境中与COMSOL Multiphysics软件进行实时连接和数据传输。COMSOL LiveLink是一种功能强大的MATLAB工具包,它允许用户在MATLAB环境中与COMSOL Multiphysics软件进行实时连接和数据传输。使用COMSOL LiveLink,你可以进行更复杂的模型设置和数据传输使用MATLAB的COMSOL LiveLink:实时连接和数据传输。

PixelNinja的博客 2089

聊聊四种即时通信(Instant Messaging)IM协议

四种即时通信(Instant Messaging)IM协议 即时消息和表示协议IMPP 表示和即时消息协议PRIM SIP即时消息和表示扩展协议SIMPLE 可扩展消息与表示协议XMPP

2万+

2026.2.23:AgentScope框架实战<一>:安装并使用agentscope

本文介绍了AgentScope框架的安装与使用实践。通过PyPI安装agentscope[full]后,演示了如何创建ReActAgent代理:1)配置DashScope聊天模型;2)注册自定义工具函数(查询位置和天气);3)初始化代理并处理用户请求。示例展示了代理如何响应复合查询(如同时获取北京位置和天气信息),输出结果显示代理成功执行了工具调用并返回结构化响应。该框架支持Python 3.13环境,提供内存管理、工具集成等功能,适用于构建智能代理系统。

拥抱具身智能,昇腾Ascend C 507

基于ESP32的室内空气质量检测系统开发

随着环境污染问题的日益严重,室内空气质量的监测变得越来越重要。室内空气质量的好坏直接影响到人们的健康,尤其是对于在封闭空间长时间待着的人群。为此,基于ESP32的室内空气质量检测系统应运而生。ESP32作为一款集成了Wi-Fi和蓝牙的高性能微控制器,为嵌入式开发提供了良好的平台,适用于构建各种智能硬件设备。本博客将详细介绍如何基于ESP32开发一个室内空气质量检测系统。系统可以实时监测空气中的温度、湿度、二氧化碳浓度、甲醛浓度等指标,并通过Wi-Fi将数据传输到云端或移动设备,方便用户随时查看空气质量情况。

2201_76125393的博客 830

Android 实现简单的即时通信

IM是Instant Message的缩写,意思是即时通信。所谓即时通信,顾名思义,就是一方发送信息给另一方,另一方能够即时收到信息。         我们身边熟知的即时通信莫过于腾讯QQ了。无论从桌面版,还是到移动版,都有即时通信的身影。不过QQ的IM有它们自己内部的通信协议,并且是对外不公开的。这种技术封闭大大阻碍了前沿技术领域的发展。而随着时代的前进,开源(Open source) 这一振

Benson的专栏 8558

深入介绍 SAP OData CSRF Token 的一些技术细节

跨站请求伪造(Cross-Site Request Forgery,简称 CSRF)是一种网络攻击手段,它允许攻击者伪造用户的身份来执行未经授权的操作。为了防止 CSRF 攻击,常用的一种技术手段就是 CSRF Token.CSRF Token 是一种随机生成的防伪 Token,它由服务器颁发给客户端,并需要客户端在提交某些特定类型的请求时,将该 Token 添加到 HTTP 请求的头部字段去。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 642

百度开源文心5.5 Flash Base:280B MoE 只激活 14B,4 步部署 + 3 个坑,微调还是等指令版

百度开源文心 5.5 Flash 基座权重:280B MoE 每 token 激活 14B,1M 上下文,同尺寸开源 Base 30 项基准多数领先。4 步部署(vLLM/SGLang completions 链路)+ 3 个高频坑 + 动手前 6 点核对清单,并给出微调 Base 还是等指令版的判断线。

weixin_50937681的博客 269

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

开源密码管理与双因素认证工具离线镜像合集

本集合汇总等开源密码管理与双因素认证相关离线包。侧重密码箱与 2FA,与「安全审计/渗透扫描」合集错开。

235

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

GitHub 开源趋势日报 | 2026-11-08

每日精选 GitHub Trending 热门项目,聚焦 AI 与大模型、Agent 智能体领域,带你用一篇文章看懂开源风向。

weixin_45631123的博客 294

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

云捷EMS开源能源管理系统JAVA实战,好用的能源管理系统

云捷EMS是一款开源能源管理系统,覆盖物联网网关、数据采集、分析与可视化全链路,支持50余种工业协议,适配水、电、汽、光伏等多类能耗设备。系统基于微服务架构,采用SpringBoot+Vue3技术栈,支持MQTT、WebSocket双通道采集,具备低代码大屏配置、实时数据与预计算分析能力,助力企业实现能耗监测、节能降耗与碳管理数字化,可直接部署或二次开发,适用于工厂、园区等高耗能场景。

weixin_42648890的博客 225

【QT入门到晋级】用开源的自定义控件开发

直接点击mainwindow.ui文件是看不到quc控件的,关键步骤是右键点击mainwindow.ui,右键菜单选择【Qt Designer】,在UI设计器中才能找到“Quc Widget”。注意:以上是前端调用自定义控件的方式,需要编译动态库等操作,相对要麻烦一些。如果有自定义控件的源码.h和.cpp文件,直接加入到现有qt项目中,以后台方式直接调用即可,以下是我分享过一个手搓的自定义控件类【QT自定义2D控件】QGraphics绘制仪表盘_qt仪表盘控件-优快云博客。

ocy的博客 177

52万 Star 的“列表的目录”:sindresorhus/awesome 如何用一套治理规则,成为全球开源资源的信任锚点

awesome 是 Sindre Sorhus 维护的开源索引项目,无一行可运行代码,却以超 52 万 Star 长居 GitHub 第二。它作为“列表的目录”,通过严格治理(30 天考察期、awesome-lint 校验、CC0 许可、贡献者评审机制)筛选高质量资源清单,成为开发者寻找优质技术资源的可信入口。虽不保证内容实时性,但其“筛选即认证”的模式重塑了信息获取方式,推动形成整个 Awesome 生态规范。

下载资源或查看教程前,请务必阅读置顶的《免责声明》 425

【FDE知识库】(4):企业知识库怎么选型,开源知识库分享几个,选择开源协议友好的版本,开发wiki-go项目

本文介绍企业内部搭建Wiki的主流开源项目,涵盖现代化(如Wiki.js、BookStack)、轻量级(MM-Wiki)、经典老牌(DokuWiki、XWiki、MediaWiki)及基于Git的文档即代码方案(Docusaurus等)。重点推荐将BookStack核心功能迁移至Go语言的Wiki Go项目,采用GoFrame框架实现单二进制部署,支持SQLite与本地文件存储,保留“书-章-页”结构与权限体系,架构清晰可扩展,适合中小团队快速私有化部署。

freewebsys的专栏 173

skill-up阿里开源Agent-Skill评估工具详解

它把「Agent 行为」这个一直靠感觉和运气的东西,变成了可声明、可执行、可回归、可演进的工程对象。对开发者:写 Skill 终于有了「单元测试 + 回归测试 + CI」;对团队:Skill 质量从「个人手艺」变成「团队资产」;对生态:Anthropic 兼容的evals.json导入 + 多引擎支持,降低了迁移和对比成本。Apache-2.0 许可、Go 编写、Windows 友好、中英双语文档——对国内开发者来说几乎零门槛。

293

开源PonWrt:让光猫刷上开源固件

弱电箱里的光猫,大多是运营商送的:能上网,想自己装插件、改配置,基本没门。想在光猫上跑 OpenWrt,前几年基本没谱;这几年 Airoha的盒子涌进二手市场,内存和闪存都不差,有的还带 2.5G 口。价钱从前年几十块炒上来,现在也不算便宜,才有人做开源固件。,社区常展开成 Passive Optical Network Wireless RouTer,简单说就是给这类 xPON 光猫用的开源固件。它基于(OpenWrt 系),专门补上 AN7581 / AN7583 的板级支持和 PON 能力。

buhuidage的博客 408

开源交易 Agent Vibe-Trading 本地部署+回测实战

一个 3.7 万 star 的开源交易 Agent,一条 pip 命令就能装好,号称能把问题直接变成回测报告。我在没有 Docker 的环境里把它跑起来后,第一件事就是怀疑它给出的回测结论——第一次跑出的策略收益好得离谱…

2301_80281820的博客 194

(开源)宠物共享平台实战指南 基于 Java + SpringBoot + Web + MySQL

这是一个基于 Java + SpringBoot + Vue + MySQL 构建的完整宠物共享平台(管理端为 Vue,用户端为纯静态 Web 站,由后端直接托管),功能持续优化中...用户登录 / 注册 宠物寄养管理 / 寄养审核 寻宠启事管理 / 认领审核 宠物视频管理 / 视频收藏 / 视频留言 感谢信管理 公告管理 轮播图信息管理 基础数据管理 用户管理 / 管理员管理 个人中心 其它...

小小码农身兼魔法师职位!除你武器~ 391

Rust重写开源版Photoshop来了,支持PSD编辑,还能让AI Agent直接操作图像

PhotoCraft 是一个基于 Rust 开发的开源专业图像编辑器,旨在以原生高性能架构重构 Photoshop 级工作流。它提供图层、蒙版、调整图层、矢量绘图、文字排版、智能滤镜以及高兼容性的 PSD 支持,同时通过 CLI、JSON 控制接口和 MCP Server 具备面向 AI Agent 的自动化能力。

Tony.Dong的专栏 246

VLC 媒体播放器下载、安装与最佳配置教程:免费开源、全平台、支持 4K 硬解的万能播放器

VLC 媒体播放器是一款免费开源、跨平台的万能播放器,支持 MP4、MKV、AVI、RMVB、4K、HDR、蓝光、流媒体等格式。本文提供 VLC 官方下载、安装步骤、硬件加速设置、字幕配置、倍速播放、网络串流和常见问题解决方法,适合新手快速上手。

the3clipse的博客 646
上一篇: 开源即时通讯(IM)项目OpenIM源码部署流程
下一篇: OpenIM Open Source Instant Messaging Project Docker Compose Deployment Guide
OpenIM
博客等级 码龄5年 295粉丝 68原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值