Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 到库贝雷内特港口的边车运输集装箱路线_Node.js_Kubernetes_Traefik - Fatal编程技术网

Node.js 到库贝雷内特港口的边车运输集装箱路线

Node.js 到库贝雷内特港口的边车运输集装箱路线,node.js,kubernetes,traefik,Node.js,Kubernetes,Traefik,我在Kubernetes吊舱中运行一个NodeJS映像,同时暴露一个特定的端口9080,并将Traefik作为一个侧车容器作为反向代理运行。如何从部署模板中指定Traefik路由 部署 如果我理解正确,您希望将命中Traefik容器的请求转发到位于同一pod中的Node.js应用程序。鉴于应用程序是从Traefik的角度静态配置的,您可以简单地通过指向侧车容器的ConfigMap将适当的文件提供程序配置装载到Traefik吊舱中 实现这一点最简单的方法是将以下文件提供程序配置直接附加到Traef

我在Kubernetes吊舱中运行一个NodeJS映像,同时暴露一个特定的端口9080,并将Traefik作为一个侧车容器作为反向代理运行。如何从部署模板中指定Traefik路由

部署


如果我理解正确,您希望将命中Traefik容器的请求转发到位于同一pod中的Node.js应用程序。鉴于应用程序是从Traefik的角度静态配置的,您可以简单地通过指向侧车容器的ConfigMap将适当的文件提供程序配置装载到Traefik吊舱中

实现这一点最简单的方法是将以下文件提供程序配置直接附加到Traefik的TOML配置文件的底部:

[file]

[backends.backend.servers.server]
url = "http://127.0.0.1:9080"
[frontends.frontend]
backend = "backend"
[frontends.frontend.routes.route]
host = "machine-echo.example.com"
如果将TOML配置文件装入Traefik pod的路径不是默认路径/etc/Traefik.TOML,则还需要在清单中传递-configFile选项,以引用文件的正确位置


在此之后,任何命中端口80上主机头为machine-echo.example.com的Traefik容器的请求都应转发到端口9080上的Node.js side car容器。

您能否澄清指定Traefik路由的含义?这一部分我不清楚,即定义标签,如traefik.frontend.rule=Host:machine-echo.example.com,类似于在dockers上使用traefik。简言之,我需要Traefik将请求转发到Pod内端口9080处暴露的nodeJS图像容器。如果我使用了不准确的术语,我表示歉意。好吧,我想我知道你的意思,并添加了一个答案。让我知道这是否符合你的问题。太好了!通过装载kubernetes configMap卷,我成功地将configFile作为容器arg作为args传递:--configFile=/config/traefik.toml:-name:config configMap:name:traefik configMap name
[file]

[backends.backend.servers.server]
url = "http://127.0.0.1:9080"
[frontends.frontend]
backend = "backend"
[frontends.frontend.routes.route]
host = "machine-echo.example.com"