Traefik作为一个简单的Http反向代理无法正常工作

时间:2018-03-20 13:28:53

标签: http reverse-proxy traefik

我使用traefik作为http反向代理。我用两个服务器创建了弹簧启动。两个服务器都在端口80818082

上正常运行

Traefik web ui在端口8080中可见。

我想要的是将http://localhost:7070/重定向到http://localhost:8081/http://localhost:8082/

traefik.toml配置文件

loglevel="INFO"

defaultEntryPoints = ["http"]

[entryPoints]
 [entryPoints.http]
 address = ":7070"

[file]

[frontends]
 [frontends.frontend1]
 backend = "backend1"
  [frontends.frontend1.routes.test_1]
  rule = "Host: localhost"

[backends]
  [backends.backend1]
  [backends.backend1.LoadBalancer]
  method = "drr"
  [backends.backend1.healthcheck]
  path = "/app/health"
  interval = "60s"

[backends.backend1.servers.server1]
url = "http://127.0.0.1:8081"
weight = 1

[backends.backend1.servers.server2]
url = "http://127.0.0.1:8082"
weight = 1
[api]
[ping]
[docker]

控制台输出

INFO[2018-03-20T18:38:58+05:30] Using TOML configuration file 
/home/kasun/apps/temp/traefik.toml 
INFO[2018-03-20T18:38:58+05:30] Traefik version v1.5.4 built on 2018-
03-15_01:33:52PM 
INFO[2018-03-20T18:38:58+05:30] 
Stats collection is disabled.
Help us improve Traefik by turning this feature on :)
More details on: https://docs.traefik.io/basics/#collected-data

INFO[2018-03-20T18:38:58+05:30] Preparing server http &{Network: 
Address::7070 TLS:<nil> Redirect:<nil> Auth:<nil> 
WhitelistSourceRange:[] Compress:false ProxyProtocol:<nil> 
ForwardedHeaders:0xc4202a4520} with readTimeout=0s writeTimeout=0s 
idleTimeout=3m0s 
INFO[2018-03-20T18:38:58+05:30] Preparing server traefik &{Network: 
Address::8080 TLS:<nil> Redirect:<nil> Auth:<nil> 
WhitelistSourceRange:[] Compress:false ProxyProtocol:<nil> 
ForwardedHeaders:0xc4202a4540} with readTimeout=0s writeTimeout=0s 
idleTimeout=3m0s 
INFO[2018-03-20T18:38:58+05:30] Starting server on :7070                     

INFO[2018-03-20T18:38:58+05:30] Starting provider *docker.Provider 


{"Watch":true,"Filename":"","Constraints":null,"Trace":false,
"DebugLogGen

 eratedTemplate":false,"Endpoint":
 "unix:///var/run/docker.sock","Domain":"","TLS":null,
 "ExposedByDefault":true,"UseBindPortIP":false,"SwarmMode":false} 
 INFO[2018-03-20T18:38:58+05:30] Starting server on :8080                     

 INFO[2018-03-20T18:38:58+05:30] Starting provider *file.Provider 
 {"Watch":true,"Filename":"/home/kasun/apps/temp/traefik.toml",
 "Constraints":null,"Trace":false,"DebugLogGeneratedTemplate":false,
 "Directory":""} 
INFO[2018-03-20T18:38:58+05:30] Server configuration reloaded on :7070       

INFO[2018-03-20T18:38:58+05:30] Server configuration reloaded on :8080       

INFO[2018-03-20T18:38:58+05:30] Server configuration reloaded on :7070       

INFO[2018-03-20T18:38:58+05:30] Server configuration reloaded on :8080       

WARN[2018-03-20T18:38:58+05:30] HealthCheck has failed 
[http://127.0.0.1:8081]: Remove from server list 
WARN[2018-03-20T18:38:58+05:30] HealthCheck has failed 
[http://127.0.0.1:8082]: Remove from server list 
WARN[2018-03-20T18:38:58+05:30] HealthCheck has failed 
[http://127.0.0.1:8082]: Remove from server list 
WARN[2018-03-20T18:38:58+05:30] HealthCheck has failed 
[http://127.0.0.1:8081]: Remove from server list 

当我从浏览器加载http://localhost:7070/时,它会提供

  

服务不可用

当我去traefik健康仪表板时,它会显示出来 enter image description here

有谁能告诉我这里做错了什么?我浏览了几篇文章,却无法找到正确的答案。

1 个答案:

答案 0 :(得分:0)

我想你是在一个容器里运行Træfik。

127.0.0.1 - &gt;容器内的localhost,而不是本地计算机。