在 Ubuntu 24.04 上部署 HuLa 即时通讯系统(服务端完整教程)
HuLa 是一个基于现代技术栈构建的开源即时通讯(IM)系统,涵盖桌面端与服务器通信端。 本文重点介绍 HuLa 通讯服务器端 在 Ubuntu 24.04 环境下的完整部署流程, 适用于自建 IM 系统、企业内部通讯平台、私有化消息服务等场景。
HuLa 通讯服务端采用 Java 微服务架构,依赖 MySQL、Redis、RocketMQ 与 Nacos, 具备良好的扩展性与高并发处理能力。
系统环境与部署要求
- 操作系统:Ubuntu 24.04(64 位)
- 内存:建议 4GB 及以上
- CPU:2 核及以上
- 磁盘:≥ 20GB 可用空间
- 网络:公网或内网稳定网络环境
一、服务器基础环境初始化
sudo apt update && sudo apt upgrade -y sudo apt install -y git curl wget unzip vim net-tools build-essential ufw
二、手动安装 MySQL 8(官方源)
cd /tmp wget https://dev.mysql.com/get/mysql-apt-config_0.8.33-1_all.deb sudo dpkg -i mysql-apt-config_0.8.33-1_all.deb
安装过程中请选择 MySQL Server 8.0
sudo apt update sudo apt install mysql-server -y sudo systemctl enable mysql sudo systemctl start mysql sudo mysql_secure_installation
mysql -u root -p CREATE DATABASE hula_im DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'hula'@'%' IDENTIFIED BY 'StrongPassword123!'; GRANT ALL PRIVILEGES ON hula_im.* TO 'hula'@'%'; FLUSH PRIVILEGES; EXIT;
三、安装 Java 17(HuLa 必需)
sudo apt install openjdk-17-jdk -y java -version
四、Redis 服务安装
sudo apt install redis-server -y sudo systemctl enable redis-server sudo systemctl start redis-server redis-cli ping
五、RocketMQ 消息队列部署
cd /opt wget https://archive.apache.org/dist/rocketmq/rocketmq-all-5.0.0-bin-release.zip unzip rocketmq-all-5.0.0-bin-release.zip mv rocketmq-all-5.0.0-bin-release rocketmq
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 echo 'export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64' >> /etc/profile source /etc/profile
cd /opt/rocketmq nohup sh bin/mqnamesrv & nohup sh bin/mqbroker -n 127.0.0.1:9876 &
六、Nacos 服务注册中心
cd /opt wget https://github.com/alibaba/nacos/releases/download/2.3.4/nacos-server-2.3.4.zip unzip nacos-server-2.3.4.zip cd nacos/bin sh startup.sh -m standalone
管理地址:
http://服务器IP:8848
七、HuLa 通讯服务端部署
cd /opt git clone https://github.com/HulaSpark/HuLa-Server.git cd HuLa-Server
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/hula_im?useSSL=false&serverTimezone=UTC
username: hula
password: StrongPassword123!
redis:
host: 127.0.0.1
port: 6379
rocketmq:
name-server: 127.0.0.1:9876
mvn clean package -DskipTests
八、systemd 守护与自动重启
mkdir -p /opt/hula/logs
[Unit] Description=HuLa IM Core Service After=network.target mysql.service redis-server.service [Service] Type=simple User=root WorkingDirectory=/opt/HuLa-Server/hula-im ExecStart=/usr/bin/java -Xms512m -Xmx1024m -jar /opt/HuLa-Server/hula-im/target/hula-im.jar Restart=always RestartSec=5 LimitNOFILE=65536 StandardOutput=append:/opt/hula/logs/hula-im.out.log StandardError=append:/opt/hula/logs/hula-im.err.log [Install] WantedBy=multi-user.target
sudo systemctl daemon-reload sudo systemctl enable hula-im sudo systemctl start hula-im
九、防火墙端口配置
sudo ufw allow ssh sudo ufw allow 3306 sudo ufw allow 6379 sudo ufw allow 9876 sudo ufw allow 8848 sudo ufw allow 8080 sudo ufw enable
部署完成与总结
至此,一套基于 Ubuntu 24.04 的 HuLa 即时通讯服务器 已成功部署, 支持 systemd 自动守护与异常重启,可用于生产环境或二次开发。
关于 VmShell INC
VmShell INC 是一家注册于美国的云计算与网络服务提供商, 专注于高性能 VPS、云服务器、跨境网络与基础设施解决方案。
VmShell 提供稳定的 Linux 服务器环境,非常适合部署即时通讯系统、 微服务架构、私有化 IM 平台与企业级应用。
官方网站:https://vmshell.com/
企业网络服务:https://tototel.com/
如果你正在寻找稳定、可靠、面向全球的服务器基础设施, VmShell INC 是部署 HuLa 通讯系统的理想选择。

