我刚刚在我的桌面上安装了带有minkube的库伯内特斯(运行Ubuntu 18.10),然后尝试使用Helm在桌面机器上安装Postgresql。
安装头盔后,我做到了:
helm install stable/postgresql
成功完成后,我转发了postgres端口:
kubectl port-forward --namespace default svc/wise-beetle-postgresql 5432:5432 &
然后我用psql——主机127.0.0.1——U postgres从我的桌面本地连接到它,成功了。
我试图从笔记本电脑连接到postgres,但失败原因如下:
psql -h $MY_DESKTOP_LAN_IP -p 5432 -U postgres
psql: could not connect to the server: Connection refused
Is the server running on host $MY_DESKTOP_LAN_IP and accepting TCP/IP connections on port 5432?
为了确保我的桌面确实在监听5432,我做了:
netstat -natp | grep 5432
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 17993/kubectl
tcp6 0 0 ::1:5432 :::* LISTEN 17993/kubectl
有人帮忙吗?我迷路了。
就我而言,解决方案是对网络有一点更深的理解。
为了清楚起见,我们将安装minikube的机器称为“A”。从我的Wifi上的其他计算机上可以看到的这台机器的IP可能是:192.100.200.300.1因为Postgres暴露在5432端口上,我的期望是Postgres应该在:192.100.200.300.1:5432外部可见。但这种理解是错误的,这正是导致意外行为的原因。
问题是minikube在虚拟机中运行,它有自己的IP地址。它不只是使用运行它的机器的IP。Minikube的IP与运行它的机器的IP不同。要查找minikube的IP,请运行:minikube IP
。我们称之为IP$MINIKUBE_IP。
然后我必须设置端口转发,比如:
kubectl端口转发--地址"192.100.200.300"--命名空间默认svc/wise-beetle-postgresql 5000:5432
所以现在,如果您在:
192.100.200.300:5000
上html" target="_blank">调用服务,它将被转发到运行mini kube的机器上的端口5432,然后您的postgres实例将接收5432。
希望这能解开或澄清其他人可能遇到的这个问题。
您需要配置postgresql。conf
要允许外部客户端连接,请查找侦听
参数并将其设置为*
,它位于postgres数据目录下,然后将笔记本电脑的ip添加到pg_hba中。conf
。它控制客户端对postgresql server的访问,更多信息请参见-https://www.postgresql.org/docs/9.3/auth-pg-hba-conf.html
每次运行Rails4.0服务器时,都会得到这个输出。 我正在运行小牛OS X10.9,所以我不知道这是不是问题所在。我已经试了我能试的一切,但似乎都没有效果。我已经卸载并安装了postgres和pg gem多次了。 这是我的database.yml文件
问题内容: 我正在尝试使用Flask在Raspberry Pi上运行一个简单的Web服务器。当我运行Flask应用程序时,它说: 在http://127.0.0.1:5000/上运行 但是,当我在笔记本电脑的Chrome中输入此地址时, ERR_CONNECTION_REFUSED 我可以在Raspberry Pi的浏览器上打开127.0.0.1:5000。我需要怎么做才能从另一台计算机连接? 问
在我做了和之后,我的postgres遇到了一些问题。我试着卸载postgres并重新安装它,但它并没有那么好用。 这就是我所做的: 现在,在我重新安装homebrew之后,当我使用时,它不显示任何错误消息。 但是我在我的Rails应用程序中运行,它显示: 更新 这对我也管用。
我正在尝试连接两个docker容器,一个是posgresql,另一个是python flask应用程序。两者都链接正确,python应用程序中的所有连接变量都直接取自postgres容器中通过链接公开的连接变量,并且与检查postgresql容器时发现的连接变量相同。当我将psql与连接字符串中的精确参数一起使用时,即: 成功连接到postgres容器中的数据库,因此我知道postgres正在通过
我一直在寻找一个解决办法,但没有找到一个有效的解决办法。 我已经在我的MacBook中使用brew安装了postgres(),并且我目前正在使用brew服务运行它(将postgres显示为正在运行的服务)。但是,当我尝试运行时,我得到以下错误。 PSQL:无法连接到服务器:没有这样的文件或目录是本地运行并接受Unix域套接字“/tmp/.s.pgsql.5432”上的连接的服务器吗? 有人已经解决