Docker容器Mysql连接有关问题
Docker容器Mysql连接问题
wo cao 坑爹

db 容器跑起来...
不但要确保 db容器正常访问,而且要配置
etc/mysql/my.cnf
127.0.0.0 改成 0.0.0.0
并且需要
登录
删除匿名用户
root 用户需要配置远程可访问
⚠️123456是你要配置等密码
接着跑起web,也就是连接db的容器.
[mapport] 代表你要映射到宿主master的端口 例如8080:8080
也可以选择 -P 映射随机.
[webname] 代表你的web容器别名.
--link 代表与 db 容器建立单独通道通信.
步骤就是这样..
另外需要注意 如果无法访问数据可能有多个原因.
查看正在运行的容器状态.是否为up
查看单个容器详细状况、如IP、映射端口信息.
另外可能一些很傻的原因也会造成
比如数据库密码、JDBC JAR包等.
自己一一排查 .
wo cao 坑爹
db 容器跑起来...
docker run -d --name db dbrepos:version
不但要确保 db容器正常访问,而且要配置
etc/mysql/my.cnf
127.0.0.0 改成 0.0.0.0
并且需要
登录
mysql -uroot -p
删除匿名用户
delete from user where user='';
root 用户需要配置远程可访问
⚠️123456是你要配置等密码
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option; update user set host='%' where user='root' and host='localhost';
接着跑起web,也就是连接db的容器.
[mapport] 代表你要映射到宿主master的端口 例如8080:8080
也可以选择 -P 映射随机.
[webname] 代表你的web容器别名.
--link 代表与 db 容器建立单独通道通信.
run -d -p [mapport] --name [webname] --link db:db webname:version
步骤就是这样..
另外需要注意 如果无法访问数据可能有多个原因.
查看正在运行的容器状态.是否为up
docker ps -a
查看单个容器详细状况、如IP、映射端口信息.
docker inspect 运行中的容器id
另外可能一些很傻的原因也会造成
比如数据库密码、JDBC JAR包等.
自己一一排查 .