我有一个本地运行的MySQL服务器..它不在容器内。我的应用程序将会击中RDS,所以没有意义去那条路线。我的应用程序能够击中RDS没问题,作为测试。但显然我想在本地开发一些东西。
从我的终端,我可以成功mysql --user=root --password=password mydb
。
由于我没有收到超时错误,因此从我的容器中我ping 127.0.0.1:3306
可以没有问题。
我还使用了控制台,在将RDS的值更新为本地运行的MySQL后,我肯定会传递正确的信息。
答案 0 :(得分:3)
Docker容器有自己的网络IP,包括它自己的$users
。所以你基本上需要确定两件事:
您的主机MySQL正在侦听其所有接口(my.cnf中的bind-addres = 0.0.0.0)。查看foreach ($users as $row){
。
找出容器可以到达的主机IP。因此,检查容器的IP:$users[] = $rs['id'];
,找到IP,并用foo <- function(dt, value) {
result <- dt[A == value,]
return(result)
}
combined <- lapply(tables, foo, value = 1)
替换最后一部分,该部分应该是容器自己网络中主机的IP。即localhost
(它可以被视为固定IP,对于开发环境来说没关系)
所以很可能这就是你需要的:netstat -na|grep 3306