1. 问题描述:

  • 创建了一个SpringBoot项目,使用IDEA的Docker插件,一键部署到了宿主机的docker内
  • 这个项目需要连接同一台宿主机内的MySQL
  • 使用localhost或者宿主机IP均不能访问MySQL

2. 解决方案:

  • Docker运行的容器之间是无法直接通信的,由于Springboot项目和MySQL都是容器,没设置通信,所以无法连通
  1. 方案一 :使用Docker容器的内部IP通信,在项目里配置连接的URL为下方IP
# 查看mysql内部IP
docker  inspect  mysql


2. 运行容器时,使用–link连接容器

docker run --name tomcat
--link --link <容器名 or id>:别名  
-d -v /usr/local/
docker_springboot-0.0.1-SNAPSHOT.war:/usr/local/tomcat/webapps/
docker_springboot-0.0.1-SNAPSHOT.war -p 8080:8080