将Spring Boot应用打成jar包,再使用Dockerfile打成镜像,如果你的springboot配置文件中mysql和redis访问IP写的是127.0.0.1或localhost 是不行的。
因为docker中的127.0.0.1和localhost是它docker本地的,映射不到宿主机。
如果是windows环境,使用host.docker.internal去访问宿主机,例如:
jdbc:mysql://127.0.0.1:3306/intelligence-campus?characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false
改成如下
jdbc:mysql://host.docker.internal:3306/intelligence-campus?characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false
就可以访问到宿主机的mysql了。
redis配置同上。