2016-02-10 80 views
1

我有主機與PostgreSQL和碼頭集裝箱。 PostgreSQL在5432端口上工作。 Docker容器必須連接到數據庫。如何通過Dockerfile或運行命令將容器連接到數據庫? EXPOSE 5432docker run -p 5432:5432 ...沒有幫助。主機端口與數據庫到碼頭集裝箱

回答

1

documentation頁:

有時你需要從 容器內連接到主機泊塢窗。要啓用此功能,請使用--add-host標誌將Docker主機的IP地址傳遞給 容器。要查找主機地址,請使用 命令ip addr show

$ HOSTIP=`ip -4 addr show scope global dev eth0 | grep inet | awk '{print \$2}' | cut -d/-f 1` 
$ docker run --add-host=docker:${HOSTIP} --rm -it busybox telnet docker 5432 

EXPOSE-p標誌工作的其他方式例如圍繞發佈容器端口到你不想在這裏的主機。

+0

或者只是連接到PostgreSQL主機的IP地址。 –

相關問題