统信UOS安装Nacos需先配置OpenJDK 17+环境、放行8848端口;推荐使用nacos-setup一键部署单机实例,也可手动解压启动或嵌入MySQL持久化,同时须适配firewalld/SELinux。

在统信UOS系统上安装并配置Nacos注册中心,需先确保Java环境就绪、端口可用、权限正确,再根据实际用途选择单机运行或持久化部署,避免因JDK版本不匹配或防火墙拦截导致服务无法启动或访问。
确认并准备Java运行环境
统信UOS默认未预装OpenJDK 17+,而Nacos 2.4.x要求JDK 17及以上版本,使用低于此版本的JDK会导致startup.sh脚本直接退出且无明确报错。
执行java -version检查当前版本;若输出为1.8或11,或提示command not found,则必须安装OpenJDK 17。
从统信应用商店搜索“OpenJDK 17”并安装,或使用命令行安装:sudo apt update && sudo apt install openjdk-17-jdk(UOS E版)/ sudo zypper install java-17-openjdk-devel(UOS A版)。
安装完成后执行java -version,确认输出中包含17.字样;接着运行echo $JAVA_HOME,若为空则需手动配置——编辑/etc/profile,末尾添加:
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH
保存后执行source /etc/profile生效。
一键部署Nacos单机实例(推荐新手)
该方式自动完成JDK校验、端口检测(8848)、适配包下载与conf初始化,全程无需手动解压或修改配置,适用于UOS A/E全架构。
打开终端,依次执行:
① 安装nacos-setup工具:curl -fsSL https://raw.githubusercontent.com/nacos-group/nacos-docker/master/build/nacos-setup | sudo bash -s install
② 启动一键部署流程:sudo nacos-setup deploy --mode standalone --version 2.4.3
③ 部署成功后,服务自动监听localhost:8848;浏览器访问http://127.0.0.1:8848/nacos,输入默认账号密码nacos/nacos即可进入控制台。
【注意】首次运行需sudo权限,否则setup工具无法写入/opt/nacos目录
手动解压部署(适用于离线或审计场景)
方法一:直接下载+解压+启动
从Nacos官网下载nacos-server-2.4.3.zip(非tar.gz),保存至/home/$USER/Downloads。
执行:unzip nacos-server-2.4.3.zip -d /opt/ → 进入/opt/nacos/bin → 执行chmod +x startup.sh shutdown.sh(否则Permission denied)→ 最后运行./startup.sh -m standalone。
方法二:验证启动状态
启动后立即执行:tail -f /opt/nacos/logs/start.out,等待出现Nacos started successfully字样;若卡在Starting Nacos超过90秒,大概率是JDK版本错误或内存不足(UOS桌面版默认仅分配1.5GB内存,需调高Xms/Xmx)。
如需调整JVM参数,在/opt/nacos/bin/startup.sh中找到JAVA_OPT行,在末尾追加:-Xms1g -Xmx1g(UOS轻量级部署足够)。
切换为MySQL持久化存储
当需要重启后仍保留服务列表、配置历史、命名空间等数据时,必须替换默认Derby数据库。此步骤不可逆,操作前请备份/opt/nacos/data目录。
第一步:确认MySQL 8.0+已运行且创建专用库:CREATE DATABASE nacos CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs;
第二步:修改/opt/nacos/conf/application.properties,取消以下四行注释并填写真实值:
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?useUnicode=true&characterEncoding=utf8&autoReconnect=true&serverTimezone=Asia/Shanghai
db.user.0=root
db.password.0=your_strong_password
第三步:下载mysql-connector-j-8.3.0.jar,复制到/opt/nacos/plugins/mysql/(目录不存在则手动创建)。
第四步:停止当前Nacos进程 → 清空/opt/nacos/logs下所有日志 → 重新执行./startup.sh -m standalone → 观察start.out中是否出现Initializing DataSource和db.num is 1。
【关键】MySQL连接URL中必须含serverTimezone=Asia/Shanghai,否则启动失败且报错隐蔽
开放防火墙并允许局域网访问
统信UOS默认启用firewalld,localhost可访问但其他设备ping不通8848端口,本质是防火墙拦截而非Nacos自身问题。
执行:sudo firewall-cmd --permanent --add-port=8848/tcp → sudo firewall-cmd --reload。
若UOS系统启用了SELinux(常见于服务器版),还需执行:sudo semanage fcontext -a -t bin_t "/opt/nacos/bin/startup.sh" → sudo restorecon -v /opt/nacos/bin/startup.sh。
验证是否生效:在另一台局域网机器上执行telnet your_uos_ip 8848,能成功连接即表示放行完成。











