Nacos双部署实操+Dubbo入门验证|Docker+虚拟机零踩坑教程
Nacos 作为阿里开源的服务发现与配置管理工具在微服务架构中应用广泛更是 Dubbo 入门部署的核心依赖Dubbo 需借助 Nacos 实现服务注册与发现。本文将详细讲解两种最常用的 Nacos 部署方式——Docker 容器部署快速便捷适合测试/生产轻量化部署和虚拟机部署稳定可控适合生产环境定制化配置搭配 Dubbo 入门验证步骤步骤清晰、附带避坑指南新手既能搞定 Nacos 部署也能快速入门 Dubbo 服务调用。一、前置准备必看无论哪种部署方式需提前满足以下基础条件避免部署过程中出现异常网络通畅能正常访问 Docker HubDocker 部署、外网虚拟机部署需下载依赖权限充足Docker 部署需拥有 Docker 操作权限虚拟机部署需 root 或 sudo 权限端口空闲确保 8848、9848、9849 三个端口未被其他服务占用可通过netstat -tuln | grep 端口号检查。二、Docker 部署 Nacosv2.3.1 版本Docker 部署的优势在于无需配置依赖、一键启动适合快速搭建测试环境或生产环境中追求部署效率的场景本次选用官方稳定版 v2.3.1。步骤1拉取 Nacos 官方镜像打开终端执行以下命令从 Docker Hub 拉取 Nacos 2.3.1 版本镜像镜像体积约 1G 左右耐心等待拉取完成若拉取缓慢可切换阿里云镜像源解决国内网络卡顿问题# 官方镜像拉取命令 docker pull nacos/nacos-server:v2.3.1 # 阿里云镜像拉取命令拉取更快推荐国内用户 docker pull registry.cn-hangzhou.aliyuncs.com/nacos/nacos-server:v2.3.1 # 阿里云镜像拉取后统一镜像名称确保后续启动命令正常执行 docker tag registry.cn-hangzhou.aliyuncs.com/nacos/nacos-server:v2.3.1 nacos/nacos-server:v2.3.1步骤2验证镜像拉取成功拉取完成后执行以下命令查看本地镜像列表确认镜像是否存在docker images若输出结果中包含nacos/nacos-server且 TAG 为v2.3.1则说明镜像拉取成功。步骤3启动 Nacos 容器首先说明 Nacos 核心端口的作用避免后续端口冲突或访问失败8848Nacos 核心服务端口用于网页端访问、API 调用9848客户端 gRPC 请求端口用于微服务客户端如 Spring Cloud 项目向 Nacos 服务端发起连接和请求9849服务端 gRPC 通信端口用于 Nacos 集群模式下各服务节点之间的同步通信单机模式也需开放避免启动异常。执行以下命令启动 Nacos 容器单机模式适合测试/小型部署docker run -d --name nacos -p 8848:8848 -p 9848:9848 -p 9849:9849 -e MODEstandalone --restartalways nacos/nacos-server:v2.3.1命令参数说明关键参数必看-d后台运行容器--name nacos给容器命名为 nacos方便后续操作可自定义-p 端口映射将容器内的 8848、9848、9849 端口映射到宿主机对应端口-e MODEstandalone指定 Nacos 以单机模式启动集群模式需额外配置本文暂不讲解--restartalways设置容器开机自启避免宿主机重启后 Nacos 服务中断nacos/nacos-server:v2.3.1指定启动的镜像及版本必须与拉取的版本一致。步骤4验证 Nacos 启动成功有两种验证方式任选其一即可终端验证执行docker ps查看容器状态若 STATUS 为Up说明容器启动成功网页验证打开浏览器访问http://localhost:8848/nacos若部署在远程服务器将 localhost 替换为服务器 IP输入默认账号密码nacos/nacos能成功登录控制台即说明 Nacos 服务正常启动。三、虚拟机部署 NacosLinux 环境虚拟机部署以 CentOS 7/8 为例适合生产环境可灵活配置 JVM 参数、数据存储方式如 MySQL稳定性更强。前提是虚拟机已安装 JDKNacos 依赖 JDK 8 及以上版本推荐 JDK 1.8。步骤1前提检查JDK 验证执行以下命令检查 JDK 是否安装成功java -version若输出 JDK 版本如 1.8.0_xxx则无需额外操作若未安装可直接执行以下命令快速安装 JDK 1.8CentOS 环境自动配置环境变量无需手动操作yum install java-1.8.0-openjdk-devel -y安装完成后再次执行java -version确认输出 1.8.0_xxx 版本即可。步骤2进入 Nacos 安装目录假设 Nacos 已解压安装到 /usr/local/nacos 目录若路径不同替换为自己的安装路径执行以下命令进入 bin 目录启动脚本所在目录cd /usr/local/nacos/bin/步骤3启动 Nacos单机模式执行启动脚本指定单机模式启动./startup.sh -m standalone启动成功后终端会提示 “nacos is starting with standalone”若提示 “No such file or directory”检查路径是否正确或给脚本添加执行权限chmod x startup.sh。步骤4验证 Nacos 启动状态执行以下命令查看 Nacos 进程是否启动Nacos 是 Java 项目进程名为 jarjps若输出结果中包含 Nacos 相关进程如 Bootstrap说明 Nacos 服务已启动。步骤5开放防火墙端口关键步骤虚拟机部署时若防火墙处于开启状态会拦截 Nacos 端口导致外部无法访问需关闭防火墙或开放对应端口推荐关闭防火墙生产环境可配置防火墙规则开放端口具体命令如下# 1. 查看防火墙状态 firewall-cmd --state # 2. 关闭防火墙临时关闭重启虚拟机后失效 systemctl stop firewalld # 3. 可选设置防火墙开机不自启永久关闭推荐测试环境 systemctl disable firewalld # 4. 生产环境推荐防火墙保持开启仅开放 Nacos 所需端口 firewall-cmd --permanent --add-port8848/tcp --add-port9848/tcp --add-port9849/tcp # 5. 重启防火墙使端口开放规则生效 firewall-cmd --reload步骤6网页验证访问打开浏览器访问http://虚拟机IP:8848/nacos输入默认账号密码nacos/nacos能成功登录控制台即说明虚拟机部署的 Nacos 服务正常。四、Dubbo入门验证Nacos部署后必做Nacos 部署完成后我们通过 Dubbo 官方示例项目dubbo-samples完成 Dubbo 入门验证确认 Nacos 能正常支撑 Dubbo 服务的注册与发现快速上手 Dubbo 服务调用流程。步骤1拉取 Dubbo 入门示例项目打开终端执行以下命令拉取官方示例项目需提前安装 Gitgit clone https://github.com/apache/dubbo-samples.git步骤2启动 Dubbo 服务提供者进入示例项目的 Spring Boot 提供者目录执行编译启动命令将服务注册到 Nacos适配 Windows、Linux/Mac 双系统路径可根据自身项目解压位置灵活调整# Windows 环境切换到提供者目录 cd D:\dubbo\dubbo-samples\1-basic\dubbo-samples-spring-boot\dubbo-samples-spring-boot-provider # Linux/Mac 环境切换到提供者目录 cd ~/dubbo-samples/1-basic/dubbo-samples-spring-boot/dubbo-samples-spring-boot-provider # 编译并启动提供者应用双系统通用 mvn compile exec:java -Dexec.mainClassorg.apache.dubbo.springboot.demo.provider.ProviderApplication启动成功后服务会自动注册到 Nacos 控制台可登录 Nacoshttp://localhost:8848/nacos在“服务管理-服务列表”中看到该 Dubbo 服务。步骤3启动 Dubbo 服务消费者打开新的终端进入消费者目录启动消费者应用调用提供者服务完成 Dubbo 入门调用验证双系统路径适配# Windows 环境切换到消费者目录 cd D:\dubbo\dubbo-samples\1-basic\dubbo-samples-spring-boot\dubbo-samples-spring-boot-consumer # Linux/Mac 环境切换到消费者目录 cd ~/dubbo-samples/1-basic/dubbo-samples-spring-boot/dubbo-samples-spring-boot-consumer # 编译并启动消费者应用双系统通用 mvn compile exec:java -Dexec.mainClassorg.apache.dubbo.springboot.demo.consumer.ConsumerApplication该命令的核心作用启动 Dubbo 消费者通过 Nacos 发现已注册的提供者服务发起远程调用验证 Dubbo 服务调用链路通畅同时巩固 Nacos 服务发现功能的实际应用。步骤4接口调用验证可选若需直观查看服务调用结果可打开命令提示符CMD或终端执行以下 curl 命令直接调用 Dubbo 服务接口curl --header Content-Type: application/json --data [Dubbo] http://localhost:50052/org.apache.dubbo.springboot.demo.DemoService/sayHello/调用成功后将返回响应“Hello Dubbo”说明 Dubbo 入门验证完成Nacos 与 Dubbo 整合正常。Dubbo入门关键说明本次验证基于 Dubbo Spring Boot 版本简化了配置适合新手入门核心逻辑提供者将服务注册到 Nacos消费者从 Nacos 获取提供者地址发起远程调用这是 Dubbo 微服务的核心流程若执行 curl 命令提示“不是内部或外部命令”可安装 curl 工具或改用 Postman 发起 POST 请求具体操作步骤打开 Postman选择请求方式为 POST输入请求地址http://localhost:50052/org.apache.dubbo.springboot.demo.DemoService/sayHello/在“Headers”栏添加键值对Content-Type: application/json在“Body”栏选择“raw”格式切换为 JSON输入请求体[Dubbo]点击发送即可看到返回响应Hello Dubbo完成验证。五、总结两种部署方式各有优势Docker 部署快速便捷适合快速测试、轻量化场景虚拟机部署稳定可控适合生产环境定制化需求。根据自身场景选择即可部署完成后可结合 Dubbo 入门示例拉取 dubbo-samples 项目验证服务调用快速上手 Dubbo 微服务开发。补充说明生产环境建议配置 MySQL 持久化修改 Nacos 的 application.properties 文件配置 MySQL 连接信息避免 Nacos 重启后配置丢失后续可进一步学习 Nacos 集群部署提升服务稳定性为 Dubbo 进阶学习打下基础。版本兼容提示Nacos v2.3.1 兼容 JDK 8-11、Dubbo 2.7.x 及以上版本建议按此版本搭配部署避免版本不兼容导致异常。

相关新闻

大数据领域数据架构的智慧智慧传媒数据处理

大数据领域数据架构的智慧智慧传媒数据处理

大数据领域数据架构的智慧传媒数据处理关键词:大数据架构、智慧传媒、数据湖仓、实时流处理、AI驱动数据处理、数据治理、全媒体数据融合 摘要:本文聚焦智慧传媒领域的数据架构设计与高效数据处理技术,系统解析如何通过数据湖仓一体化、实时流…

2026/7/2 21:39:00 阅读更多 →
别再把Agent当ChatGPT了!完整技术架构+实战指南(建议收藏)

别再把Agent当ChatGPT了!完整技术架构+实战指南(建议收藏)

“别再把Agent当成高级版ChatGPT了——它是一套能思考、会行动、可协作的数字生命体。” 2026年,AI圈最火的词是 Agent(智能体)。 但90%的人仍停留在“用LLM写个自动脚本”的层面。 真正的AI Agent,早已不是单点工具&#xff0…

2026/7/3 12:43:36 阅读更多 →
基于nodejs基于vue的学生选课系统vue课程评价管理系统

基于nodejs基于vue的学生选课系统vue课程评价管理系统

目录 技术栈选择系统功能模块设计数据库设计后端实现前端实现评价系统实现系统安全部署方案测试计划开发周期估算扩展功能 项目技术支持可定制开发之功能创新亮点源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作 技术栈选择 Node.js 作为后…

2026/5/17 9:15:56 阅读更多 →

最新新闻

ParsecVDisplay:解锁Windows虚拟显示新姿势,告别多屏焦虑

ParsecVDisplay:解锁Windows虚拟显示新姿势,告别多屏焦虑

ParsecVDisplay:解锁Windows虚拟显示新姿势,告别多屏焦虑 【免费下载链接】parsec-vdd ✨ Perfect virtual display for game streaming 项目地址: https://gitcode.com/gh_mirrors/pa/parsec-vdd 你是否曾因物理显示器不足而苦恼?是否…

2026/7/3 12:43:21 阅读更多 →
LosslessCut无损编辑架构:FFmpeg GUI工具的技术革新与多场景应用

LosslessCut无损编辑架构:FFmpeg GUI工具的技术革新与多场景应用

LosslessCut无损编辑架构:FFmpeg GUI工具的技术革新与多场景应用 【免费下载链接】lossless-cut The swiss army knife of lossless video/audio editing 项目地址: https://gitcode.com/gh_mirrors/lo/lossless-cut 在传统视频编辑领域,重编码带…

2026/7/3 12:41:17 阅读更多 →
ParsecVDisplay虚拟显示器驱动架构深度解析:Windows高性能虚拟显示解决方案实战指南

ParsecVDisplay虚拟显示器驱动架构深度解析:Windows高性能虚拟显示解决方案实战指南

ParsecVDisplay虚拟显示器驱动架构深度解析:Windows高性能虚拟显示解决方案实战指南 【免费下载链接】parsec-vdd ✨ Perfect virtual display for game streaming 项目地址: https://gitcode.com/gh_mirrors/pa/parsec-vdd ParsecVDisplay是一款基于Parsec …

2026/7/3 12:41:17 阅读更多 →
【JAVA毕设源码分享】基于springboot人像后期融合网站的设计与实现的设计与实现(程序+文档+代码讲解+一条龙定制)

【JAVA毕设源码分享】基于springboot人像后期融合网站的设计与实现的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/3 12:39:17 阅读更多 →
锂电牵引辊需具备哪些核心性能?靠谱生产厂家怎么选?

锂电牵引辊需具备哪些核心性能?靠谱生产厂家怎么选?

锂电牵引辊是锂电池极片、隔膜生产线上的核心传动部件,承担基材平稳传输、张力精准调控的关键作用,其加工精度、材料耐候性直接决定电池生产良率与产线运行稳定性,适配锂电复杂工况的定制化产品与专业制造厂家,是新能源制造企业提…

2026/7/3 12:37:16 阅读更多 →
网盘直链下载助手终极指南:如何5分钟内实现浏览器直接下载文件

网盘直链下载助手终极指南:如何5分钟内实现浏览器直接下载文件

网盘直链下载助手终极指南:如何5分钟内实现浏览器直接下载文件 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / 中国移动云盘…

2026/7/3 12:35:15 阅读更多 →

日新闻

Nginx防御TLS重协商攻击实战:从原理到配置与监控

Nginx防御TLS重协商攻击实战:从原理到配置与监控

1. 项目概述:为什么TLS重协商攻击至今仍需警惕十多年前的CVE-2011-1473,一个关于TLS/SSL协议重协商机制的漏洞,现在提起来还有必要吗?很多运维和开发朋友可能会觉得,这都老掉牙了,现代服务器和客户端不都默…

2026/7/3 0:03:59 阅读更多 →
华为防火墙双通道远程管理实战:Web与SSH配置详解

华为防火墙双通道远程管理实战:Web与SSH配置详解

1. 项目概述:为什么需要双通道远程管理防火墙?在任何一个稍具规模的企业网络里,防火墙都是那个默默守护在边界的关键角色。作为网络工程师,我们不可能每次都跑到机房,插上console线去配置它。远程管理能力,…

2026/7/3 0:03:59 阅读更多 →
AD74413R与PIC18F65K40的高精度工业数据采集方案

AD74413R与PIC18F65K40的高精度工业数据采集方案

1. 项目概述:AD74413R与PIC18F65K40的协同工作在工业自动化和精密测量领域,同时实现高精度模数转换(ADC)和数模转换(DAC)功能是许多复杂系统的核心需求。AD74413R作为一款四通道可配置模拟输入/输出器件,与PIC18F65K40微控制器的组合&#xf…

2026/7/3 0:05:59 阅读更多 →

周新闻

月新闻