![](/img/trans.png)
[英]Cannot connect django container to postgres on a linux host machine
[英]Docker container with Python Web App - Connect to Postgres on Host machine (OSX)
我可以連接到我本地的Postgres數據庫在我的web應用程序, 但如果我運行一個泊塢窗容器內的Web應用程序。
我不確定它是否與Postgres連接設置或Docker網絡設置有關。
遵循我的設置和命令:
主持人 :
Docker容器
postgresql.conf :
listen_addresses = '*'
pg_hba.conf
host all all 127.0.0.1/32 trust
host all all 0.0.0.0/0 trust
host all all 172.17.0.0/24 trust
host all all 192.168.99.0/24 trust
docker run -i --net=host -h 127.0.0.1 -e POSTGRES_URI=postgresql://127.0.0.1:5432/db my/image
錯誤:
無法連接到服務器:連接被拒絕
服務器是否在主機“ 127.0.0.1”上運行並在端口5432上接受TCP / IP連接?
docker run -i --add-host=dockerhost:`docker-machine ip ${DOCKER_MACHINE}` -e POSTGRES_URI=postgresql://dockerhost:5432/db -p 8000:8000 -p 5432:5432 my/image
錯誤:
服務器意外關閉了連接
這可能意味着服務器在處理請求之前或期間異常終止。
有任何想法嗎?
在文檔中有關於此操作的說明
我想從容器連接到主機上的服務
Mac的IP地址正在更改(如果沒有網絡訪問權限,則沒有IP地址)。 我們當前的建議是將未使用的IP附加到Mac上的
lo0
接口。 例如:sudo ifconfig lo0 alias 10.200.10.1/24
,並確保您的服務正在偵聽此地址或0.0.0.0
(即不是127.0.0.1
)。 然后,容器可以連接到該地址。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.