我用nginx,php和postgres創建了一個ubuntu鏡像。docker postgres pgadmin本地連接
我想將當前圖像中的postgres數據庫連接到位於本地機器上的pgadmin
。
我已經嘗試使用碼頭督察嘗試使用圖像ip來作出與我當地的pgadmin連接,但沒有太大的成功。我也嘗試在本地配置一些端口來連接工作。
我用nginx,php和postgres創建了一個ubuntu鏡像。docker postgres pgadmin本地連接
我想將當前圖像中的postgres數據庫連接到位於本地機器上的pgadmin
。
我已經嘗試使用碼頭督察嘗試使用圖像ip來作出與我當地的pgadmin連接,但沒有太大的成功。我也嘗試在本地配置一些端口來連接工作。
這是一個有效的問題,不知道爲什麼人們覺得「似乎不可能回答這個問題」。
所以,這裏是我怎麼做你正在嘗試做的:
拉Postgres的圖像從泊塢樞紐
docker pull postgres:latest
使用下面的命令
運行容器docker run -p 5432:5432 postgres
使用碼頭工人的檢查命令查找IP
使用IP,端口,用戶名和密碼在pgAdmin的連接
你也可以做一個簡單的telnet像下面以確認您是否可以訪問泊塢窗的Postgres集裝箱:
telnet IP_ADDRESS 5432
如果你用這個'-p 5432:5432'發佈端口,那麼你不需要找到容器的IP就可以使用你的主機IP,或者'127.0.0.1'或者'localhost' – Davos 2017-11-10 15:55:56
你必須在容器中的Postgres的端口暴露在您的本地系統。您可以通過運行您的容器,這樣做:
docker run -p 5432:5432 <name/id of container>
與GUI客戶端連接或CLI確保使用的IP地址不是localhost即使您的IP地址是本地主機的IP地址時。
docker ps
會給你你的postgres容器的ip地址。
我在windows 10上運行docker for windows 1.12所做的成功。6(9655),該步驟是象下面這樣:
拉最新postgres的
搬運工拉postgres的:最新
運行postgres的containner
搬運工運行-d -e POSTGRES_USER =用戶-e POSTGRES_PASSWORD =密碼123 - 名稱db-my -p 5432:5432 --restart =總是postgres
然後安裝最新從 pgadmin website
運行的pgAdmin 4 pgAdmin4版本創建新的服務器,並輸入如下 主機:127.0.0.1端口 :5432 用戶名:用戶 密碼:password123
這個工作。應該被標記爲答案。 – Tarik 2017-04-20 00:09:01
您不會說PostgreSQL是否正在偵聽外部連接(檢查您的配置文件),或者該端口是否顯示爲從本地計算機打開。 – 2014-08-28 08:21:08
似乎沒有可能通過提供這麼少的信息來回答這個問題 – cthulhu 2014-08-28 13:47:29