Docker 容器到本地 osx postgres
Docker container to local osx postgres
我正在尝试从 docker 容器连接到本地 postgres 数据库(osx 中的 运行)。我是 运行 docker 代表 mac。我试过使用 --add-host
选项,但还没有让它工作。我是否缺少建立连接的配置?下面是我正在尝试的示例。
docker run --add-host=localbox:192.168.59.3 -it postgres /bin/bash
连接尝试
root@1893226613e9:/# psql -h localbox -U test_user
psql: could not connect to server: Connection timed out
Is the server running on host "localbox" (192.168.59.3) and accepting
TCP/IP connections on port 5432?
root@1893226613e9:/# ping localbox
PING localbox (192.168.59.3): 56 data bytes
^C--- localbox ping statistics ---
7 packets transmitted, 0 packets received, 100% packet loss
好的,@warmoverflow 的评论让我朝着正确的方向前进。这是我必须做的才能让一切都在说话。
最初我为 --add-host 使用了错误的 ip。我不得不使用以下内容。
docker run --add-host=localbox:192.168.99.1 -it postgres /bin/bash
我通过查找 virtualbox 使用的地址得到了 192.168.99.1。
$ ifconfig
vboxnet0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
ether 0a:00:27:00:00:00
inet 192.168.99.1 netmask 0xffffff00 broadcast 192.168.99.255
这使 ping 正常工作,但随后我收到快速连接被拒绝的消息。
psql: could not connect to server: Connection refused
Is the server running on host "192.168.99.1" and accepting
TCP/IP connections on port 5432?
然后我不得不启用 postgres 来接受远程连接。我通过添加到下面的配置来做到这一点。
/usr/local/var/postgres/postgresql.conf
listen_addresses = '*'
/usr/local/var/postgres/pg_hba.conf
host all all 192.168.99.100/32 trust
我正在尝试从 docker 容器连接到本地 postgres 数据库(osx 中的 运行)。我是 运行 docker 代表 mac。我试过使用 --add-host
选项,但还没有让它工作。我是否缺少建立连接的配置?下面是我正在尝试的示例。
docker run --add-host=localbox:192.168.59.3 -it postgres /bin/bash
连接尝试
root@1893226613e9:/# psql -h localbox -U test_user
psql: could not connect to server: Connection timed out
Is the server running on host "localbox" (192.168.59.3) and accepting
TCP/IP connections on port 5432?
root@1893226613e9:/# ping localbox
PING localbox (192.168.59.3): 56 data bytes
^C--- localbox ping statistics ---
7 packets transmitted, 0 packets received, 100% packet loss
好的,@warmoverflow 的评论让我朝着正确的方向前进。这是我必须做的才能让一切都在说话。
最初我为 --add-host 使用了错误的 ip。我不得不使用以下内容。
docker run --add-host=localbox:192.168.99.1 -it postgres /bin/bash
我通过查找 virtualbox 使用的地址得到了 192.168.99.1。
$ ifconfig
vboxnet0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
ether 0a:00:27:00:00:00
inet 192.168.99.1 netmask 0xffffff00 broadcast 192.168.99.255
这使 ping 正常工作,但随后我收到快速连接被拒绝的消息。
psql: could not connect to server: Connection refused
Is the server running on host "192.168.99.1" and accepting
TCP/IP connections on port 5432?
然后我不得不启用 postgres 来接受远程连接。我通过添加到下面的配置来做到这一点。
/usr/local/var/postgres/postgresql.conf
listen_addresses = '*'
/usr/local/var/postgres/pg_hba.conf
host all all 192.168.99.100/32 trust