项目启动

开docker 开网关 开BaseDataApplication 开其他

http://localhost:8848/nacos/

http://localhost:9200/

http://localhost:5601

http://localhost:5173/

项目环境貌似都要在docker中配置 为什么不在windows本地配置呢 之后的微服务开发 真实工作开发 都是在docker里跑而不是在本机跑吗 之前的springboot项目都是在本地配好所需环境 所以有些不习惯

这是一个非常好的问题。很多从单体应用(Monolith)转到微服务架构的开发者都会有这个疑惑。

简单的回答是:真实工作中,确实很少直接在 Windows 本机安装这么多中间件的 .exe 或 .msi 版本了。Docker 已经成为微服务开发的标配环境。

以下是详细的理由,以及真实工作场景的开发模式分析:

1. 为什么这个项目推荐用 Docker?

大麦这个微服务项目涉及的中间件非常多,包括:MySQL, Nacos, Redis, Zookeeper, Kafka, Elasticsearch, Kibana 。

如果在 Windows 本机直接安装这些软件,你会面临以下崩溃的场景:

  • 环境一致性灾难:Windows 版的 Redis(微软维护的)和 Linux 版(官方版)版本往往不同步;Kafka 在 Windows 上运行经常出现文件锁问题。Docker 可以保证你运行的镜像和生产环境(通常是 Linux)完全一致。
  • 安装繁琐与卸载残留:你需要下载 7 个不同的安装包,配置 7 个环境变量,修改 7 个分散在不同目录的配置文件。不学了想卸载时,注册表和文件残留很难清理干净。
  • 配置隔离:文档中提供的 Docker 命令直接把配置(如密码、端口、开启鉴权)写在了启动命令里 。如果在 Windows 安装,你需要去找到 my.iniredis.confzoo.cfg 等文件一个个手动修改,非常容易出错。
  • 资源管理:不开发时,Docker 也就是关掉容器及服务。但如果是 Windows 安装,很多中间件会注册为系统服务,开机自启,长期占用你电脑的内存。

2. 真实工作中的开发模式是怎样的?

在微服务和云原生时代,企业级的开发模式通常有以下几种:

  • 模式 A:本地代码 + Docker 中间件(最主流)
    • 做法:你的 IDEA 和 Java 代码运行在 Windows/Mac 本机上(方便调试),但 MySQL、Redis、MQ 等依赖服务运行在本地的 Docker 容器中。
    • 优点:环境搭建快(docker-compose up 一键启动所有环境),用完即走,不污染本机系统。这也是大麦项目推荐的方式。
  • 模式 B:本地代码 + 远程中间件(企业常见)
    • 做法:公司提供一套公共的“开发环境(Dev)”服务器。你本地启动 Java 项目,配置文件里填写的 Redis/DB 地址是公司测试服务器的 IP,而不是 localhost
    • 优点:本地电脑完全不需要安装中间件,省内存。
    • 缺点:受网络影响,且数据是大家共用的,容易被同事误删数据(大麦项目文档中提到的“云环境”就是这种模式,但作者也提示了稳定性较差 )。
  • 模式 C:纯云端开发 (Cloud IDE)
    • 做法:代码和环境都在远程容器里,通过浏览器或 VS Code Remote 进行开发。

结论:几乎没有团队会要求你在入职第一天,在自己的 Windows 电脑上挨个去下载安装 MySQL.exe, Redis.msi, Kafka.zip 等等。这被视为一种“低效”且“不专业”的做法。

3. 给你的建议

虽然你之前习惯了本地配置,但我强烈建议你借这个项目熟悉 Docker

  1. 适应趋势:Docker 是后端开发者的必备技能。现在的部署(K8s)、CI/CD 流程全部基于 Docker。
  2. 降低难度:文档中已经给出了现成的命令。你只需要安装一个 Docker Desktop for Windows,然后复制文档中的命令运行即可。
    • 例如 MySQL,复制文档中的 docker run ... 命令 ,你就立刻拥有了一个配置好密码和字符集的数据库,比你自己下载安装包配置快得多。
  3. 折中方案
    • 如果你实在抗拒 Docker,或者电脑配置太低跑不动 Docker Desktop。
    • 你可以选择性安装:比如 MySQL 和 Redis 你可以用 Windows 版(因为这两个在 Windows 上比较成熟),但 Kafka、Elasticsearch 和 Nacos 强烈建议用 Docker 或虚拟机,因为它们在 Windows 下配置非常麻烦且容易报错。
    • 文档中也提到了 Nacos 提供了 Windows 启动脚本 startup.cmd,这是少数可以直接在 Windows 方便运行的组件之一 。

总结:不用害怕变化。按照文档使用 Docker,你会发现配置环境从“一整天”缩短到了“十分钟”。


企业级项目导航:⬅️ 03-相关链接 | 00-项目启动 | ➡️ 01-实操