如何通过docker run命令(传递标签)在traefik所代理的应用程序中通过ratelimit?

时间:2018-06-15 11:25:11

标签: traefik

我使用与此类似的命令启动Web应用程序:

docker run     --name whoami1  --network proxy    --label traefik.port=80  --label  traefik.basic.frontend.rule=Host:test.example.com       emilevauge/whoami 

如何使用--label传递速率限制?

1 个答案:

答案 0 :(得分:0)

使用您的配置定义TOML文件以避免传递大量标签可能更实用:

正如您可以看到here,在"费率限制"部分:

[frontends]
    [frontends.frontend1]
      # ...
      [frontends.frontend1.ratelimit]
        extractorfunc = "client.ip"
          [frontends.frontend1.ratelimit.rateset.rateset1]
            period = "10s"
            average = 100
            burst = 200
          [frontends.frontend1.ratelimit.rateset.rateset2]
            period = "3s"
            average = 5
            burst = 10

每个前端必须定义3个参数。 一个toml文件会更清楚,imho。