我对docker概念非常了解并且了解它的基础知识。
我只是想知道如何使用docker构建多租户应用程序。
容器将使用具有不同模式的本地托管数据库。使用nginx我们可以进行反向代理但我们如何实现它?
因为localhost:8080
将访问每个容器以及我们如何添加上游和服务器部分。
如果有人向我解释,那将非常有帮助。
答案 0 :(得分:0)
如果我理解正确,您希望容器中的进程连接到主机上的资源。
从桥接模式的容器角度(默认),主机的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上使用。