图片.png

Traefik 中的配置可以使用两种不同形式:

  • 动态路由配置(动态配置)
  • 启动配置(静态配置)

静态配置中的元素(这些元素不会经常更改)连接到 providers并定义 Treafik 将要监听的 entrypoints
动态配置 包含定义系统如何处理请求的所有配置内容。这些配置是可以改变的,而且是热更新的,不存在请求中断或连接损耗。

动态配置

Traefik 从 providers 获取它的 动态配置:编排器,服务注册中心,或者普通的配置文件。
由于这个配置和你的基础架构是相关的,我们可以去参考 该文档的专门介绍部分 来了解更多信息。
快速入门示例 中,动态配置来自于一个以标签形式附加在的一个 docker 容器至上。
HTTPS 证书也属于动态配置
你可以添加/更新/删除它们,而不需要重新启动 Traefik 实例。

静态配置

在 Traefik 中定义了三种不同的且互斥方式(也就意味着你只能使用其中的一种方式):

  1. 在配置文件中
  2. 在命令行参数中
  3. 通过环境变量传递

按照上面列出的顺序以此读取配置信息。
如果没有为给定选项提供任何值,那么将会使用默认值。此外,如果选项有子选项,并且没有指定任何这些子选项,则默认值也将适用。
比如,--providers.docker 选项本身就可以直接启用 docker provider 了,即使存在--providers.docker.endpoint 之类的子选项,一旦确定了,该选项将设置(并重置)--providers.docker 子选项的所有默认值。

配置文件

Traefik 在启动的时候,会在一下位置中搜索名为 traefik.toml(或 traefik.ymltraefik.yaml)的文件:

  • /etc/traefik/
  • $XDG_CONFIG_HOME/
  • $HOME/.config/
  • . (工作目录)

另外我们还可以适用 configFile 参数来覆盖它:

  1. traefik --configFile=foo/bar/myconfigfile.toml

参数

可以使用如下命令获取所有可用的参数列表:

  1. traefik --help
  2. # 或者
  3. docker run traefik[:version] --help
  4. # 例如: docker run traefik:2.0 --help

所有可用的参数可以在地址https://doc.traefik.io/traefik/reference/static-configuration/cli/

环境变量

所有可用的环境变量可以在这里找到https://doc.traefik.io/traefik/reference/static-configuration/env/

可用的配置选项

所有配置选项都在其相关的文档部分中有记录。我们可以通过菜单切换去查找可用的功能特性, 比如通过 providers路由部分 可以查看它们相应的运行情况。