Linux微服务部署需分层推进:先装Java、Docker及工具;再启Nacos注册中心;接着用Docker运行MySQL、Redis、Nginx;然后启动网关与业务jar包;最后部署前端并配置Nginx反向代理。

Linux 服务器上部署微服务架构,核心是分层搭建:基础运行环境 → 注册与配置中心 → 中间件支撑 → 网关与业务服务 → 前端与反向代理。不追求一步到位,而是按依赖顺序逐层落稳。
装好 Java、Docker 和必要工具
微服务多数基于 Java(Spring Cloud Alibaba)或 Go/Node.js,以 Java 为主流。需确保:
- 安装 OpenJDK 17 或 JDK 8(若项目要求),并配置 JAVA_HOME 和 PATH(写入 /etc/profile 后执行 source /etc/profile)
- 安装 Docker + docker-compose(推荐用阿里云镜像源加速),启动服务并加入开机自启:systemctl enable docker && systemctl start docker
- 安装常用工具:curl、wget、unzip、net-tools(用于 ifconfig)、vim
部署注册与配置中心(Nacos 是首选)
Nacos 集成服务发现、动态配置、健康检查,适合中小团队快速落地:
- 下载官方 tar.gz 包(如 nacos-server-2.4.0.tar.gz),解压到 /usr/local/nacos
- 创建 MySQL 数据库 nacos_config,导入 nacos/conf/nacos-mysql.sql
- 修改 nacos/conf/application.properties,填入 MySQL 连接、用户名密码,并启用 spring.datasource.platform=mysql
- 单机模式直接 sh bin/startup.sh -m standalone;集群需配 conf/cluster.conf 并共用数据库
- 访问 http://服务器IP:8848/nacos,默认账号密码为 nacos/nacos
拉起关键中间件(MySQL、Redis、Nginx)
微服务离不开数据存储与缓存,建议用 Docker 统一管理,避免环境冲突:
- MySQL:运行命令示例
docker run -d --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /data/mysql:/var/lib/mysql -d mysql:8.0 --lower_case_table_names=1 - Redis:简单启动即可
docker run -d --name redis -p 6379:6379 -d redis:7-alpine --appendonly yes - Nginx:用于静态资源托管和反向代理网关,把配置文件挂载出来便于修改(如 /etc/nginx/conf.d/gateway.conf)
启动网关 + 业务服务(jar 包或容器化)
若已有编译好的 Spring Boot 微服务 jar 包(如 gateway.jar、auth.jar、system.jar),可直接运行:
- 上传 jar 到服务器(如 /opt/services/),确保有执行权限
- 用 nohup 启动(带 JVM 参数更稳):
nohup java -Xms512m -Xmx1024m -jar gateway.jar --spring.profiles.active=prod > gateway.log 2>&1 & - 每项服务需配置正确指向 Nacos 地址(spring.cloud.nacos.discovery.server-addr)和命名空间/分组
- 前端 Vue/React 项目构建后,将 dist 目录内容放入 Nginx 的 html 目录,通过 location 路由转发 API 请求到网关
整个过程无需强耦合顺序,但必须确保 Nacos 先于其他服务启动,MySQL/Redis 在业务服务启动前可用。配置项宁可多验一次(如 curl http://localhost:8848/nacos/v1/ns/service/list 查服务列表),也别留隐患。


















