0
我對docker概念非常陌生並瞭解其基本知識。 我只是想知道如何使用docker構建多租戶應用程序。 容器將使用不同schema的本地託管數據庫。使用nginx我們可以做反向代理,但我們如何實現它? ,因爲每個容器都將被localhost:8080
訪問,以及我們如何添加上游和服務器部分。 如果有人向我解釋它會很有幫助。如何使用docker構建多租戶應用程序
我對docker概念非常陌生並瞭解其基本知識。 我只是想知道如何使用docker構建多租戶應用程序。 容器將使用不同schema的本地託管數據庫。使用nginx我們可以做反向代理,但我們如何實現它? ,因爲每個容器都將被localhost:8080
訪問,以及我們如何添加上游和服務器部分。 如果有人向我解釋它會很有幫助。如何使用docker構建多租戶應用程序
如果我理解正確,您希望容器中的進程連接到主機上的資源。
從橋模式的默認容器角度來看,主機的IP是網關。不幸的網關IP地址可能會有所不同,只能在運行時確定。
這裏有一些方法來獲得它:
docker inspect <container name or ID>
。該網關將在NetworkSettings.Networks.Gateway
下提供。route | awk '/^default/ { print $2 }'
一種可能性是運行您的容器時要使用--net=host
。 這將使您在與主機上的進程相同的網絡上運行進程。這樣做將使您的數據庫可以通過localhost
的容器進行訪問。
請注意,使用--net=host
不適用於Docker for mac/windows。
沒有必要使用主機的IP。如果數據庫設置爲偵聽localhost和docker0接口或所有接口(不建議出於安全原因),則docker0接口地址(通常爲172.17.0.1)將起作用。 –