docker lararvel 配置 mysql容器 连接navicat

本文介绍了如何使用Docker创建并运行MySQL容器,详细解析了端口映射、数据卷绑定和环境变量设置。接着,通过`docker inspect`获取容器IP,并在Navicat中配置连接参数,特别强调了连接端口应为容器内的实际端口(3306),而非主机映射的端口(3307)。最后,分享了在Laravel环境下配置数据库连接的经验。
摘要由CSDN通过智能技术生成

创建一个mysql容器

docker run -p 3307:3306 --name mysql -v /D/workforme/mysql/log:/var/log/mysql -v /D/workforme/mysql/data:/var/lib/mysql -v /D/workforme/mysql/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7

查看mysql容器ip

docker inspect 容器ID

连接navicat

host localhost
端口填写3307

最关键的laravel env配置

DB_CONNECTION=mysql
DB_HOST=172.17.0.3  #填写上面你查到的mysql容器ip
DB_PORT=3306   #3307不对的  因为连接乐你mysql容器
DB_DATABASE=shopfm
DB_USERNAME=root
DB_PASSWORD=root

小结

如果你host填写127.0.0.1或者host 端口3306 3307 这几种组合我都试过了 没用,因为连接的是你的nginx服务容器 里面没有mysql,你要连接mysql容器的ip,因为你进的是mysql容器,所以端口是填写3306而不是3307,自己试一试就知道了,反正我都试过了,在连接navicat的时候,因为映射容器的端口是3307,所以那里填3307

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值