跳转至

配置介绍

魔法是如何发生的?

Configuration

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

  • 动态配置:完全动态的路由配置
  • 静态配置:启动配置

静态配置 中的元素(这些元素不会经常更改)连接到 providers并定义 Treafik 将要监听的 entrypoints

动态配置 包含定义系统如何处理请求的所有配置内容。这些配置是可以改变的,而且是无缝热更新的,没有任何请求中断或连接损耗。

不兼容的配置

需要注意的是,截止目前,Traefik v1.X 的旧配置与 v2.X 的配置不兼容的。 如果要测试 v2 版本,请确保你使用的是 v2 版本的配置。

动态配置

Traefik 从 providers 获取它的 动态配置:编排器,服务注册表,或者普通的旧配置文件。

由于这个配置和你的基础架构是相关的,我们可以去参考 该文档的专门介绍部分 来了解更多信息。

快速入门示例 中,动态配置来自于一个以标签形式附加在的一个 docker 容器至上。

HTTPS 证书也属于动态配置

你可以添加/更新/删除它们,而不需要重新启动 Traefik 实例。

静态配置

在 Traefik 中定义了3中不同的互斥方式(比如,你只能同时使用一种方式):

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

如果没有为给定选项提供任何值,那么将会使用默认值。此外,如果选项有子选项,并且没有指定任何这些子选项,则默认值也将适用。

比如,--providers.docker 选项本身就可以直接启用 docker provider 了,即使存在--providers.docker.endpoint 之类的子选项,一旦确定了,该选项将设置(并重置)--providers.docker 子选项的所有默认值。

配置文件

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

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

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

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

参数

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

traefik --help

# 或者

docker run traefik[:version] --help
# 例如: docker run traefik:2.0 --help

所有可用的参数可以在 这里 找到。

环境变量

所有可用的环境变量可以在 这里 找到。

可用的配置选项

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