【发布时间】:2019-05-31 13:56:28
【问题描述】:
对于节点服务器,我能够使用is-docker 包确定它们是否在 Docker 容器中运行。这显然不适用于在浏览器中运行的 React 应用程序,而不是使fs 不可用的命令行。有没有其他方法可以让 Web 应用判断它是否在 Docker 容器中运行?
【问题讨论】:
-
浏览器几乎从不在 Docker 容器中运行,因此您可以做出相当强的假设,即基于浏览器的 React 应用程序没有在 Docker 容器中运行。为什么重要?
-
如果您需要知道在浏览器中运行的 React 应用程序,那么只需将标志向下传递或通过 HTTP 请求将其查询到服务器
-
@DavidMaze 我的问题很可能是模棱两可的。当然,我并没有在 Docker 容器中运行实际的浏览器,暂时只运行使用 play
serve服务的应用程序。当用户浏览应用程序时,在用户浏览器中执行的构建代码不再能够轻松访问有关其运行的服务器的信息。尤其是当涉及到识别服务器是否被 dockerized 时。 -
只是一个小补充:我的动机是我连接到一个 GraphQL 服务器,这取决于这是在开发期间通过
localhost本地发生还是在生产中使用docker-compose在多容器设置中发生我希望应用程序连接到链接服务器(通过docker-compose)而不是普通的localhost。