簡體   English   中英

如何從主機外部連接到 docker postgreSQL 容器

[英]How do I connect to a docker postgreSQL container from outside the host

我有一個運行 postgresql 的 docker 容器連接到 ubuntu 主機上的另一個容器(網絡映射服務器)。 我想從主機外部(同一網絡上的另一台機器)連接到我的數據庫。

我能夠從主機 (PGadmin) 連接到數據庫,從另一個容器連接到數據庫,但不能從主機外部(通過公共 IP)連接到 PGadmin 上的錯誤屏幕截圖

我該如何解決這個問題?

非常感謝,托馬斯

我自己解決了:我必須指定 0.0.0.0:5432:5432 才能從任何 IP、公共或本地訪問它。

非常感謝漢斯的幫助

您需要將容器上的 map 端口 5432 連接到主機上的端口並通過該端口進行連接。

假設您想在主機上使用端口 55432。 然后將參數-r 55432:5432添加到 docker 運行命令,然后連接到 docker 主機上的端口 55432。

您還需要允許主機防火牆上端口 55432 上的傳入連接能夠從主機外部進行連接。

在主機中使用 pgcl 實用程序:公共 IP 地址:xx.xx.xx.xx pgcli -h xx.xx.xx.xx -p 5432 或 5416(user defined) -U postgres

服務器:PostgreSQL 15.1 (Debian 15.1-1.pgdg110+1) 版本:3.5.0 主頁: http://pgcli.com postgres@10:postgres>

----------+--------+----------+------------+------ ------+--------------------+ | 名稱 | 業主 | 編碼 | 整理| 類型 | 訪問權限 | |------------+--------+---------+------------+----| | 郵政編碼 | 郵政編碼 | 編碼器 | en_US.utf8 | en_US.utf8 | | | 模板0 | 郵政編碼 | 編碼器 | en_US.utf8 | en_US.utf8 | =c/postgres |

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM