搭建SpringBoot脚手架工程系列(3): 一键启动服务

前言

接上篇文章SpringBoot脚手架工程系列(2):代码格式化/质量审核/提交检查,赋予了脚手架工程完善的代码格式化/质量审核/提交检查能力。让我们继续来完善脚手架,提高脚手架的工程本地运行&调试能力,帮助团队能在此工程的基础上能进行快速开发。

痛点

目前我们的SpringBoot脚手架工程依赖了MySQL数据库,在本地日常功能开发中,如果想要启动SpringBoot服务必须要先在本地启动MySQL,这就需要团队中的每个成员都得在本地安装一遍MySQL,假如说后续项目又依赖了Redis,ElasticSearch,MQ这些中间件,那每个人还得在本地安装更多的外部服务,这无疑会给团队带来更多的开销,那有没有一种办法可以让团队成员不需要关心如何搭建本地开发环境,一条命令就可以将服务启动呢?
答案是可以利用docker-compose来一键启动服务,不用再关心如何搭建外部服务。

利用docker-compose搭建本地开发环境

在项目的根目录下新建docker-compose.yml文件,文件内容如截图所示,可能需要一定的docker基础才能比较清楚文件中各项配置的含义,我在截图中已大概标记出各项配置的含义。
可以理解为通过docker-compose文件定义了2个服务“simple-scaffold”和“mysql-local”,对应的就是我们的脚手架工程和本地mysql,然后可以使用docker-compose up命令启动定义好的服务,这样本地开发的时候除了需要安装好docker和docker-compose之外,其他的工作都提前定义在了docker-compose.yml文件中。
请添加图片描述
接着我们在项目根目录下执行docker-compose up命令,会发现定义的两个服务可以正常启动,并且mysql-local会先于simple-scaffold启动。在这里插入图片描述

自定义环境变量的使用

我们在docker-compose.yml的simple-scaffold服务中定义了环境变量,可以直接在应用程序中通过${xxx}获取到,方便灵活修改配置。
在这里插入图片描述

调试功能的开启

在build.gradle中新增了bootRun执行时的JVM参数,使用5005端口作为debug端口,这样我们可以通过IDEA随时debug应用程序。
在这里插入图片描述
选择“Remote JVM Debug”,然后输入端口,我们主机的调试端口是5055,这个端口是在docker-compose.yml中定义的。在这里插入图片描述我们点击Debug按钮会发现进入了Debug调试,此时就可以在需要的地方打断点进行调试了。
在这里插入图片描述

结语

利用docker-compose让我们可以一键启动服务,让团队中的成员不需要花费精力在搭建本地开发环境上,可以享受更高效的本地开发体验。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值