我使用了官方的Postgres映像并创建了容器,并且可以通过端口5432在本地成功连接到容器中的Postgres,并创建了自己的表和插入的数据。但是我无法从同一本地以太网中的远程计算机访问Postgres
我设置了一个名为access.sh
的shell脚本,将host all all 0.0.0.0/0 md5
写入pg_hba.conf。然后,我将access.sh放置在/docker-entrypoint-initdb.d/access.sh
目录中,以便据我所知它将在容器启动时执行。
答案 0 :(得分:0)
您应该使用以下命令运行容器: 码头工人运行-p 5432:5432“ containerid” 您能否确认是否这样做? 另外postgres db不应同时在您的主机上运行(不应占用端口) 在Windows上,您可以执行以下操作:net stop postgresql-9.0 在linux上,有多个带有不同选项的发行版。请分享有关您的环境的更多信息,以帮助您。
答案 1 :(得分:0)
容器启动后,显示“ IPv4转发已禁用,网络将无法工作”。
解决方案:
vi /etc/sysctl.conf
net.ipv4.ip_forward=1
#restart network and docker
systemctl restart network && systemctl restart docker