centos上面部署了docker容器

并且将原来的服务放到的docker的tomcat镜像上

但是现在服务服务连接mysql数据库


mysql.url=jdbc:mysql://localhost:3306/jsclub

但是现在localhost默认的是docker容器这个虚拟主机的ip

但是在docker上面并没有安装mysql服务

docker有自己的ip

centos服务器也有自己的ip

首先我们来看centos的ip

输入ifconfig

docker连接容器外部的mysql_连接外部mysql

这样就可以看到我们的ip地址,

然后来替换上面的jdbc.properties    localhost

替换好了之后启动容器

[root@izr86o15kikb3az ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
eca7fb793b74 tomcat "catalina.sh run" 11 minutes ago Exited (143) 14 seconds ago distracted_heisenberg
080060b7b796 tomcat "catalina.sh run" 16 minutes ago Exited (143) 15 minutes ago peaceful_bhaskara
722852b223a1 tomcat "catalina.sh run" 21 minutes ago Exited (143) 16 minutes ago musing_nightingale
aa25fe203fab tomcat "catalina.sh run" 20 hours ago Exited (143) 22 minutes ago romantic_ride
4ec00115f55c tomcat "catalina.sh run" 20 hours ago Created wonderful_pascal
5cf9d4c3f4e1 tomcat "catalina.sh run" 20 hours ago Exited (143) 20 hours ago stupefied_sanderson
dee2aafd3c37 tomcat "catalina.sh run" 20 hours ago Exited (143) 20 hours ago recursing_mclean
88cde77f1b79 nginx "nginx -g 'daemon of…" 4 days ago Exited (0) 20 hours ago heuristic_khayyam
8fa91a516e98 nginx "nginx -g 'daemon of…" 4 days ago Exited (0) 4 days ago gifted_poincare
9da134cef02f nginx "nginx -g 'daemon of…" 4 days ago Exited (0) 4 days ago practical_wozniak
cf781e80699b nginx "nginx -g 'daemon of…" 4 days ago Exited (0) 4 days ago musing_cori
c87332417f85 nginx "nginx -g 'daemon of…" 4 days ago Exited (0) 4 days ago nginx
1ccd3d443198 hello-world "/hello" 5 days ago Exited (0) 5 days ago elated_lamarr
[root@izr86o15kikb3az ~]# docker start aa25fe203fab

这边有很多的容器

为什么产生了那么多

原来是我多次使用了docker run -p -d 80:8080 tomcat

这样会创建来一个基于tomcat镜像的容器

所以有那么多

所以说到这个地方容器和镜像之前的区别就能够理清楚了

修改了上面的jdbc之后

docker连接容器外部的mysql_tomcat_02

就可以正常的连接数据库了

希望对你有所帮助