今天在docker中启动nacos容器和mysql容器,因为他们两个容器相互隔离,没有使用同一网桥网络,nacos无法访问MySQL,结果就是nacos启动日志报错
解决办法就是创建一个网桥,另两个容器加入到这个网桥网络当中,然后重启两个容器后,就可以访问了
启动nacos、mysql容器(准备环境)
docker ps 查看启动的docker容器
docker network ls 查看当前网络
docker network create [自己定义的网络名称] 创建新网桥网络
docker network ls 再次查看网络,看是否创建成功
docker network connect [自己定义的网络名称] [mysql的id]
docker network connect [自己定义的网络名称] [nacos的id]
docker network inspect [自己定义的网络名称] 查看两个容器是否被添加到同一个网桥网络
docker exec -it nacos /bin/bash 进入nacos容器中
ping mysql容器id 看是否可以ping通,通了就可以了
这步也可以跳过,因为有的人docker容器中没有安装ping命令
如果安装的话,最好换国内源安装,否则下载网速真的很感人!!!!
nocos的配置文件
PREFER_HOST_MODE=hostname
MODE=standalone
SPRING_DATASOURCE_PLATFORM=mysql
MYSQL_SERVICE_HOST= 我这里写的是我的网桥网络IP
MYSQL_SERVICE_DB_NAME=nacos
MYSQL_SERVICE_PORT=3306
MYSQL_SERVICE_USER=
MYSQL_SERVICE_PASSWORD=
MYSQL_SERVICE_DB_PARAM=
docker restart nacos 重启nacos容器
docker logs -f nacos 查看nacos日志, 启动成功