跳到正文
Træfɪk

安装配置选项

配置选项

字段 说明 默认值
accesslog 访问日志设置。 false
accesslog.addinternals 为内部服务(ping、仪表板等)启用访问日志。 false
accesslog.bufferingsize 以缓冲方式处理的访问日志行数。 0
accesslog.dualoutput 在使用 OTLP 的同时启用访问日志输出。配置 OTLP 时,默认禁用此输出。 false
accesslog.fields.defaultmode 字段的默认模式:keep drop
accesslog.fields.headers.defaultmode 字段的默认模式:keep drop
accesslog.fields.headers.names.name 覆盖请求头的处理模式
accesslog.fields.names.name 覆盖字段的处理模式
accesslog.fields.queryparameters.defaultmode 查询参数的默认模式:keep drop
accesslog.filepath 访问日志文件路径。省略或为空时使用标准输出。
accesslog.filters.minduration 保留请求耗时超过指定时长的访问日志。 0
accesslog.filters.retryattempts 保留至少发生过一次重试的访问日志。 false
accesslog.filters.statuscodes 保留状态码在指定范围内的访问日志。
accesslog.format 访问日志格式:json、common 或 genericCLF common
accesslog.otlp OpenTelemetry 设置。 false
accesslog.otlp.grpc OpenTelemetry 收集器的 gRPC 配置。 false
accesslog.otlp.grpc.endpoint 设置收集器的 gRPC 端点(host:port)。 localhost:4317
accesslog.otlp.grpc.headers.name 随载荷发送的请求头。
accesslog.otlp.grpc.insecure 为导出器禁用客户端传输安全。 false
accesslog.otlp.grpc.tls.ca TLS CA 证书
accesslog.otlp.grpc.tls.cert TLS 证书
accesslog.otlp.grpc.tls.insecureskipverify TLS 跳过安全验证 false
accesslog.otlp.grpc.tls.key TLS 私钥
accesslog.otlp.http OpenTelemetry 收集器的 HTTP 配置。 false
accesslog.otlp.http.endpoint 设置收集器的 HTTP 端点(scheme://host:port/path)。 https://localhost:4318
accesslog.otlp.http.headers.name 随载荷发送的请求头。
accesslog.otlp.http.tls.ca TLS CA 证书
accesslog.otlp.http.tls.cert TLS 证书
accesslog.otlp.http.tls.insecureskipverify TLS 跳过安全验证 false
accesslog.otlp.http.tls.key TLS 私钥
accesslog.otlp.resourceattributes.name 定义附加资源属性(key:value)。
accesslog.otlp.servicename 定义服务名称资源属性。 traefik
api 启用 API/仪表板。 false
api.basepath 定义 API 和仪表板对外提供访问的基础路径。 /
api.dashboard 启用仪表板。 true
api.dashboardname 仪表板的自定义名称。
api.debug 启用用于调试和性能分析的额外端点。 false
api.disabledashboardad 禁用仪表板中的广告。 false
api.insecure 直接在名为 traefik 的入口点上启用 API。 false
certificatesresolvers.name 证书解析器配置。 false
certificatesresolvers.name.acme.cacertificates 指定 PEM 编码的 CA 证书路径,用于验证 HTTPS 证书并非由系统全局受信任根列表中的 CA 签发的 ACME 服务器。
certificatesresolvers.name.acme.caserver 要使用的 CA 服务器。 https://acme-v02.api.letsencrypt.org/directory
certificatesresolvers.name.acme.caservername 指定 CA 服务器名称,用于验证 HTTPS 证书并非由系统全局受信任根列表中的 CA 签发的 ACME 服务器。
certificatesresolvers.name.acme.casystemcertpool 定义证书池是否必须使用系统证书池的副本。 false
certificatesresolvers.name.acme.certificatesduration 证书有效期,单位为小时。 2160
certificatesresolvers.name.acme.certificatetimeout 在最终确认请求中获取证书的超时时间。 30
certificatesresolvers.name.acme.clientresponseheadertimeout 与 ACME 服务器通信时接收响应头的超时时间。 30
certificatesresolvers.name.acme.clienttimeout 与 ACME 服务器完成一次完整 HTTP 事务的超时时间。 120
certificatesresolvers.name.acme.disablecommonname 禁用 CSR 中的通用名称。 false
certificatesresolvers.name.acme.dnschallenge 启用 DNS-01 质询。 false
certificatesresolvers.name.acme.dnschallenge.delaybeforecheck (已弃用)延迟指定秒数后便假定 DNS 已传播,而不查找和查询域名服务器。 0
certificatesresolvers.name.acme.dnschallenge.disablepropagationcheck (已弃用)在通知 ACME DNS 质询已就绪之前,禁用 DNS 传播检查。[不推荐] false
certificatesresolvers.name.acme.dnschallenge.propagation DNS 传播检查配置
certificatesresolvers.name.acme.dnschallenge.propagation.delaybeforechecks 定义检查质询 TXT 记录传播之前的延迟时间。 0
certificatesresolvers.name.acme.dnschallenge.propagation.disableanschecks 禁用针对权威域名服务器的质询 TXT 记录传播检查。 false
certificatesresolvers.name.acme.dnschallenge.propagation.disablechecks 禁用质询 TXT 记录传播检查(不推荐)。 false
certificatesresolvers.name.acme.dnschallenge.propagation.requireallrns 要求质询 TXT 记录传播到所有递归域名服务器。 false
certificatesresolvers.name.acme.dnschallenge.provider 使用基于 DNS-01 的质询提供者而非 HTTPS。
certificatesresolvers.name.acme.dnschallenge.resolvers 使用以下 DNS 服务器解析 FQDN 的权威信息。
certificatesresolvers.name.acme.eab.hmacencoded 外部 CA 提供的 Base64 编码 HMAC 密钥。
certificatesresolvers.name.acme.eab.kid 外部 CA 提供的密钥标识符。
certificatesresolvers.name.acme.email 注册时使用的电子邮件地址。
certificatesresolvers.name.acme.emailaddresses CSR 要使用的电子邮件地址。
certificatesresolvers.name.acme.httpchallenge 启用 HTTP-01 质询。 false
certificatesresolvers.name.acme.httpchallenge.delay 创建质询与验证之间的延迟时间。 0
certificatesresolvers.name.acme.httpchallenge.entrypoint HTTP 质询入口点
certificatesresolvers.name.acme.keytype 生成证书私钥时使用的 KeyType。允许的值为 'EC256'、'EC384'、'RSA2048'、'RSA4096'、'RSA8192'。 RSA4096
certificatesresolvers.name.acme.preferredchain 要使用的首选证书链。
certificatesresolvers.name.acme.profile 要使用的证书签发配置(profile)。
certificatesresolvers.name.acme.storage 要使用的存储。 acme.json
certificatesresolvers.name.acme.tlschallenge 启用 TLS-ALPN-01 质询。 false
certificatesresolvers.name.acme.tlschallenge.delay 创建质询与验证之间的延迟时间。 0
certificatesresolvers.name.tailscale 启用 Tailscale 证书解析。 true
core.defaultrulesyntax 定义规则解析器的默认语法(v2 或 v3) v3
core.stricttlsoptions 对于 TLS 选项冲突的路由器,禁止不安全地回退到默认 TLS 选项。 false
entrypoints.name 入口点定义。 false
entrypoints.name.address 入口点地址。
entrypoints.name.allowacmebypass 允许通过自定义路由器处理 ACME TLS 和 HTTP 质询。 false
entrypoints.name.asdefault 将此入口点加入默认入口点列表,供未定义任何入口点的路由器使用。 false
entrypoints.name.forwardedheaders.connection 在移除之前允许通过中间件链的 Connection 请求头列表。
entrypoints.name.forwardedheaders.insecure 信任所有转发头。 false
entrypoints.name.forwardedheaders.notappendxforwardedfor 禁止将 RemoteAddr 追加到 X-Forwarded-For 请求头。默认值为 false(启用追加)。 false
entrypoints.name.forwardedheaders.trustedips 仅信任来自指定 IP 的转发头。
entrypoints.name.http HTTP 配置。
entrypoints.name.http.aliasheadersstrategy 定义处理请求头名称为另一请求头名称别名的请求时所采用的策略(keep、delete 和 reject)。
entrypoints.name.http.encodedcharacters.allowencodedbackslash 定义是否允许路径中含有编码后反斜杠字符的请求。 true
entrypoints.name.http.encodedcharacters.allowencodedhash 定义是否允许路径中含有编码后井号字符的请求。 true
entrypoints.name.http.encodedcharacters.allowencodednullcharacter 定义是否允许路径中含有编码后空字符的请求。 true
entrypoints.name.http.encodedcharacters.allowencodedpercent 定义是否允许路径中含有编码后百分号字符的请求。 true
entrypoints.name.http.encodedcharacters.allowencodedquestionmark 定义是否允许路径中含有编码后问号字符的请求。 true
entrypoints.name.http.encodedcharacters.allowencodedsemicolon 定义是否允许路径中含有编码后分号字符的请求。 true
entrypoints.name.http.encodedcharacters.allowencodedslash 定义是否允许路径中含有编码后斜杠字符的请求。 true
entrypoints.name.http.encodequerysemicolons 定义是否对请求查询字符串中的分号进行 URL 编码。 false
entrypoints.name.http.maxheaderbytes 请求头的最大大小,单位为字节。 1048576
entrypoints.name.http.middlewares 与此入口点关联的路由器的默认中间件。
entrypoints.name.http.redirections.entrypoint.permanent 执行永久重定向。 true
entrypoints.name.http.redirections.entrypoint.priority 生成的路由器的优先级。 9223372036854775806
entrypoints.name.http.redirections.entrypoint.scheme 重定向使用的协议。 https
entrypoints.name.http.redirections.entrypoint.to 重定向的目标入口点。
entrypoints.name.http.sanitizepath 定义是否启用请求路径规范化(移除 /./、/../ 和连续多个斜杠)。 true
entrypoints.name.http.tls 与此入口点关联的路由器的默认 TLS 配置。 false
entrypoints.name.http.tls.certresolver 与此入口点关联的路由器的默认证书解析器。
entrypoints.name.http.tls.domains 与此入口点关联的路由器的默认 TLS 域名。
entrypoints.name.http.tls.domains[0].main 默认主体名称。
entrypoints.name.http.tls.domains[0].sans 主体备用名称。
entrypoints.name.http.tls.options 与此入口点关联的路由器的默认 TLS 选项。
entrypoints.name.http.underscoreheadersstrategy 定义处理请求头名称含有下划线的请求时所采用的策略(keep、delete 和 reject)。(已弃用:请改用 aliasHeadersStrategy)
entrypoints.name.http2.maxconcurrentstreams 指定允许每个客户端在每个连接上发起的并发流数量。 250
entrypoints.name.http2.maxdecoderheadertablesize 指定 HTTP2 HPACK 头表在解码侧(接收客户端数据)的最大大小。 4096
entrypoints.name.http2.maxencoderheadertablesize 指定 HTTP2 HPACK 头表在编码侧(向客户端发送数据)的最大大小。 4096
entrypoints.name.http3 HTTP/3 配置。 false
entrypoints.name.http3.advertisedport 通告 HTTP/3 可用性的 UDP 端口。 0
entrypoints.name.observability.accesslogs 为此入口点启用访问日志。 true
entrypoints.name.observability.metrics 为此入口点启用指标。 true
entrypoints.name.observability.traceverbosity 定义此入口点的链路追踪详细程度。 minimal
entrypoints.name.observability.tracing 为此入口点启用链路追踪。 true
entrypoints.name.proxyprotocol Proxy-Protocol 配置。 false
entrypoints.name.proxyprotocol.insecure 信任所有来源。 false
entrypoints.name.proxyprotocol.trustedips 仅信任指定的 IP。
entrypoints.name.reuseport 允许同一进程或不同进程的入口点监听同一个 TCP/UDP 端口。 false
entrypoints.name.transport.keepalivemaxrequests 关闭保持活动连接之前允许的最大请求数。 0
entrypoints.name.transport.keepalivemaxtime 关闭保持活动连接之前允许的最长持续时间。 0
entrypoints.name.transport.lifecycle.gracetimeout Traefik 停止之前,为活动请求完成处理而预留的时长。 10
entrypoints.name.transport.lifecycle.requestacceptgracetimeout Traefik 开始优雅关闭过程之前,继续接受请求的时长。 0
entrypoints.name.transport.respondingtimeouts.idletimeout IdleTimeout 是空闲(保持活动)连接在自行关闭之前可保持空闲的最长时长。为零时不设置超时。 180
entrypoints.name.transport.respondingtimeouts.readtimeout ReadTimeout 是读取整个请求(包括请求体)的最长时长。为零时不设置超时。 60
entrypoints.name.transport.respondingtimeouts.writetimeout WriteTimeout 是写入响应的最长时长,超过后超时。为零时不设置超时。 0
entrypoints.name.udp.timeout Timeout 定义在释放相关资源之前等待空闲会话的时长。 3
experimental.abortonpluginfailure 定义是否必须成功加载所有插件后 Traefik 才能启动。 false
experimental.fastproxy 启用 FastProxy 实现。 false
experimental.fastproxy.debug 启用 FastProxy 实现的调试模式。 false
experimental.knative 允许使用 Knative 提供者。 false
experimental.kubernetesgateway (已弃用)允许使用 Kubernetes Gateway API 提供者。 false
experimental.kubernetesingressnginx 允许使用 Kubernetes Ingress NGINX 提供者。 false
experimental.localplugins.name 本地插件配置。 false
experimental.localplugins.name.modulename 插件的模块名称。
experimental.localplugins.name.settings 插件设置(仅适用于 wasm 插件)。
experimental.localplugins.name.settings.envs 转发给 wasm 客户程序的环境变量。
experimental.localplugins.name.settings.mounts 挂载到 wasm 客户程序的目录。
experimental.localplugins.name.settings.useunsafe 允许插件使用 unsafe 和 syscall 包。 false
experimental.otlplogs 启用 OpenTelemetry 日志集成。 false
experimental.plugins.name.hash 用于验证的插件哈希'
experimental.plugins.name.modulename 插件的模块名称。
experimental.plugins.name.settings 插件设置(仅适用于 wasm 插件)。
experimental.plugins.name.settings.envs 转发给 wasm 客户程序的环境变量。
experimental.plugins.name.settings.mounts 挂载到 wasm 客户程序的目录。
experimental.plugins.name.settings.useunsafe 允许插件使用 unsafe 和 syscall 包。 false
experimental.plugins.name.version 插件的版本。
global.checknewversion 定期检查是否发布了新版本。 true
global.notappendxforwardedfor 禁止将 RemoteAddr 追加到 X-Forwarded-For 请求头。默认值为 false(启用追加)。 false
global.sendanonymoususage 定期发送匿名使用统计信息。未指定此选项时默认禁用。 false
hostresolver 启用 CNAME 扁平化。 false
hostresolver.cnameflattening 启用/禁用 CNAME 扁平化的开关 false
hostresolver.resolvconfig DNS 解析使用的 resolv.conf /etc/resolv.conf
hostresolver.resolvdepth DNS 递归解析的最大深度 5
log Traefik 日志设置。 false
log.compress 决定是否使用 gzip 压缩轮转后的日志文件。 false
log.filepath Traefik 日志文件路径。省略或为空时使用标准输出。
log.format Traefik 日志格式:json common
log.level Traefik 日志使用的日志级别。 ERROR
log.maxage 根据文件名中编码的时间戳,保留旧日志文件的最长天数。 0
log.maxbackups 保留的旧日志文件的最大数量。 0
log.maxsize 日志文件轮转之前的最大大小,单位为 MB。 0
log.nocolor 使用 'common' 格式时,禁用彩色输出。 false
log.otlp OpenTelemetry 设置。 false
log.otlp.grpc OpenTelemetry 收集器的 gRPC 配置。 false
log.otlp.grpc.endpoint 设置收集器的 gRPC 端点(host:port)。 localhost:4317
log.otlp.grpc.headers.name 随载荷发送的请求头。
log.otlp.grpc.insecure 为导出器禁用客户端传输安全。 false
log.otlp.grpc.tls.ca TLS CA 证书
log.otlp.grpc.tls.cert TLS 证书
log.otlp.grpc.tls.insecureskipverify TLS 跳过安全验证 false
log.otlp.grpc.tls.key TLS 私钥
log.otlp.http OpenTelemetry 收集器的 HTTP 配置。 false
log.otlp.http.endpoint 设置收集器的 HTTP 端点(scheme://host:port/path)。 https://localhost:4318
log.otlp.http.headers.name 随载荷发送的请求头。
log.otlp.http.tls.ca TLS CA 证书
log.otlp.http.tls.cert TLS 证书
log.otlp.http.tls.insecureskipverify TLS 跳过安全验证 false
log.otlp.http.tls.key TLS 私钥
log.otlp.resourceattributes.name 定义附加资源属性(key:value)。
log.otlp.servicename 定义服务名称资源属性。 traefik
metrics.addinternals 为内部服务(ping、仪表板等)启用指标。 false
metrics.datadog Datadog 指标导出器类型。 false
metrics.datadog.addentrypointslabels 启用入口点指标。 true
metrics.datadog.address Datadog 地址。 localhost:8125
metrics.datadog.addrouterslabels 启用路由器指标。 false
metrics.datadog.addserviceslabels 启用服务指标。 true
metrics.datadog.prefix 指标采集使用的前缀。 traefik
metrics.datadog.pushinterval Datadog 推送间隔。 10
metrics.influxdb2 InfluxDB v2 指标导出器类型。 false
metrics.influxdb2.addentrypointslabels 启用入口点指标。 true
metrics.influxdb2.additionallabels.name 所有指标上的附加标签(influxdb 标签)
metrics.influxdb2.address InfluxDB v2 地址。 http://localhost:8086
metrics.influxdb2.addrouterslabels 启用路由器指标。 false
metrics.influxdb2.addserviceslabels 启用服务指标。 true
metrics.influxdb2.bucket InfluxDB v2 存储桶 ID。
metrics.influxdb2.org InfluxDB v2 组织 ID。
metrics.influxdb2.pushinterval InfluxDB v2 推送间隔。 10
metrics.influxdb2.token InfluxDB v2 访问令牌。接受令牌值或令牌文件路径。
metrics.otlp OpenTelemetry 指标导出器类型。 false
metrics.otlp.addentrypointslabels 启用入口点指标。 true
metrics.otlp.addrouterslabels 启用路由器指标。 false
metrics.otlp.addserviceslabels 启用服务指标。 true
metrics.otlp.explicitboundaries 延迟指标的边界。 0.005000, 0.010000, 0.025000, 0.050000, 0.075000, 0.100000, 0.250000, 0.500000, 0.750000, 1.000000, 2.500000, 5.000000, 7.500000, 10.000000
metrics.otlp.grpc OpenTelemetry 收集器的 gRPC 配置。 false
metrics.otlp.grpc.endpoint 设置收集器的 gRPC 端点(host:port)。 localhost:4317
metrics.otlp.grpc.headers.name 随载荷发送的请求头。
metrics.otlp.grpc.insecure 为导出器禁用客户端传输安全。 false
metrics.otlp.grpc.tls.ca TLS CA 证书
metrics.otlp.grpc.tls.cert TLS 证书
metrics.otlp.grpc.tls.insecureskipverify TLS 跳过安全验证 false
metrics.otlp.grpc.tls.key TLS 私钥
metrics.otlp.http OpenTelemetry 收集器的 HTTP 配置。 false
metrics.otlp.http.endpoint 设置收集器的 HTTP 端点(scheme://host:port/path)。 https://localhost:4318
metrics.otlp.http.headers.name 随载荷发送的请求头。
metrics.otlp.http.tls.ca TLS CA 证书
metrics.otlp.http.tls.cert TLS 证书
metrics.otlp.http.tls.insecureskipverify TLS 跳过安全验证 false
metrics.otlp.http.tls.key TLS 私钥
metrics.otlp.pushinterval 调用检查点采集的间隔。 10
metrics.otlp.resourceattributes.name 定义附加资源属性(key:value)。
metrics.otlp.servicename 定义服务名称资源属性。 traefik
metrics.prometheus Prometheus 指标导出器类型。 false
metrics.prometheus.addentrypointslabels 启用入口点指标。 true
metrics.prometheus.addrouterslabels 启用路由器指标。 false
metrics.prometheus.addserviceslabels 启用服务指标。 true
metrics.prometheus.buckets 延迟指标的桶。 0.100000, 0.300000, 1.200000, 5.000000
metrics.prometheus.entrypoint 入口点 traefik
metrics.prometheus.headerlabels.name 定义 requests_total 指标的额外标签,以及为每个标签提供值的请求头。
metrics.prometheus.manualrouting 手动路由 false
metrics.statsd StatsD 指标导出器类型。 false
metrics.statsd.addentrypointslabels 启用入口点指标。 true
metrics.statsd.address StatsD 地址。 localhost:8125
metrics.statsd.addrouterslabels 启用路由器指标。 false
metrics.statsd.addserviceslabels 启用服务指标。 true
metrics.statsd.prefix 指标采集使用的前缀。 traefik
metrics.statsd.pushinterval StatsD 推送间隔。 10
ocsp OCSP 配置。 false
ocsp.responderoverrides.name 定义查询 OCSP 服务器时要替换的 OCSP 响应者映射。
ping 启用 ping。 false
ping.entrypoint 入口点 traefik
ping.manualrouting 手动路由 false
ping.terminatingstatuscode 终止时的状态码 503
providers.consul 启用 Consul 提供者。 false
providers.consul.endpoints KV 存储端点。 127.0.0.1:8500
providers.consul.namespaces 设置用于发现配置的命名空间(仅限 Consul Enterprise)。
providers.consul.rootkey KV 存储使用的根键。 traefik
providers.consul.tls.ca TLS CA 证书
providers.consul.tls.cert TLS 证书
providers.consul.tls.insecureskipverify TLS 跳过安全验证 false
providers.consul.tls.key TLS 私钥
providers.consul.token 每个请求的 ACL 令牌。
providers.consulcatalog 启用 Consul Catalog 提供者。 false
providers.consulcatalog.cache 读取目录时使用本地代理缓存。 false
providers.consulcatalog.connectaware 启用 Consul Connect 支持。 false
providers.consulcatalog.connectbydefault 默认认为每个服务都具备 Connect 能力。 false
providers.consulcatalog.constraints Constraints 是 Traefik 与容器标签匹配的表达式,用于决定是否为该容器创建路由。
providers.consulcatalog.defaultrule 默认规则。 Host({{ normalize .Name }})
providers.consulcatalog.endpoint.address Consul 服务器的地址
providers.consulcatalog.endpoint.datacenter 要使用的数据中心。如未提供,则使用代理的默认数据中心
providers.consulcatalog.endpoint.endpointwaittime WaitTime 限制 Watch 的阻塞时长。如未提供,则使用代理的默认值 0
providers.consulcatalog.endpoint.httpauth.password 基本认证 password
providers.consulcatalog.endpoint.httpauth.username 基本认证用户名
providers.consulcatalog.endpoint.scheme Consul 服务器的 URI 协议
providers.consulcatalog.endpoint.tls.ca TLS CA 证书
providers.consulcatalog.endpoint.tls.cert TLS 证书
providers.consulcatalog.endpoint.tls.insecureskipverify TLS 跳过安全验证 false
providers.consulcatalog.endpoint.tls.key TLS 私钥
providers.consulcatalog.endpoint.token Token 用于提供每个请求的 ACL 令牌,覆盖代理的默认令牌
providers.consulcatalog.exposedbydefault 默认暴露容器。 true
providers.consulcatalog.namespaces 设置用于发现服务的命名空间(仅限 Consul Enterprise)。
providers.consulcatalog.prefix Consul 服务标签的前缀。 traefik
providers.consulcatalog.refreshinterval 检查 Consul API 的间隔。 15
providers.consulcatalog.requireconsistent 强制读取完全一致。 false
providers.consulcatalog.servicename Traefik 服务在 Consul Catalog 中的名称(需要通过编排器或手动注册)。 traefik
providers.consulcatalog.stale 读取目录时使用过时一致性。 false
providers.consulcatalog.strictchecks 允许接收流量的服务健康状态列表。 passing, warning
providers.consulcatalog.watch 监听 Consul API 事件。 false
providers.docker 启用 Docker 提供者。 false
providers.docker.allowemptyservices 创建或移除对应服务时,忽略 Docker 容器健康检查。 false
providers.docker.constraints Constraints 是 Traefik 与容器标签匹配的表达式,用于决定是否为该容器创建路由。
providers.docker.defaultrule 默认规则。 Host({{ normalize .Name }})
providers.docker.endpoint Docker 服务器端点。可以是 TCP 或 Unix 套接字端点。 unix:///var/run/docker.sock
providers.docker.exposedbydefault 默认暴露容器。 true
providers.docker.httpclienttimeout HTTP 连接的客户端超时时间。 0
providers.docker.network 默认使用的 Docker 网络。
providers.docker.password HTTP 基本认证的密码。
providers.docker.tls.ca TLS CA 证书
providers.docker.tls.cert TLS 证书
providers.docker.tls.insecureskipverify TLS 跳过安全验证 false
providers.docker.tls.key TLS 私钥
providers.docker.usebindportip 使用绑定端口的 IP 地址,而不是内部网络的 IP 地址。 false
providers.docker.username HTTP 基本认证的用户名。
providers.docker.watch 监听 Docker 事件。 true
providers.ecs 启用 AWS ECS 提供者。 false
providers.ecs.accesskeyid 发起请求时使用的 AWS 凭证访问密钥 ID。
providers.ecs.autodiscoverclusters 自动发现集群。 false
providers.ecs.clusters ECS 集群名称。 default
providers.ecs.constraints Constraints 是 Traefik 与容器标签匹配的表达式,用于决定是否为该容器创建路由。
providers.ecs.defaultrule 默认规则。 Host({{ normalize .Name }})
providers.ecs.ecsanywhere 启用 ECS Anywhere 支持。 false
providers.ecs.exposedbydefault 默认暴露服务。 true
providers.ecs.healthytasksonly 决定是否只发现健康的任务。 false
providers.ecs.refreshseconds 轮询间隔(秒)。 15
providers.ecs.region 请求使用的 AWS 区域。
providers.ecs.secretaccesskey 发起请求时使用的 AWS 凭证访问密钥。
providers.etcd 启用 Etcd 提供者。 false
providers.etcd.endpoints KV 存储端点。 127.0.0.1:2379
providers.etcd.password 认证密码。
providers.etcd.rootkey KV 存储使用的根键。 traefik
providers.etcd.tls.ca TLS CA 证书
providers.etcd.tls.cert TLS 证书
providers.etcd.tls.insecureskipverify TLS 跳过安全验证 false
providers.etcd.tls.key TLS 私钥
providers.etcd.username 认证用户名。
providers.file.debugloggeneratedtemplate 为生成的配置模板启用调试日志。 false
providers.file.directory 从目录中的一个或多个 .yml 或 .toml 文件加载动态配置。
providers.file.filename 从文件加载动态配置。
providers.file.watch 监听提供者。 true
providers.http 启用 HTTP 提供者。 false
providers.http.endpoint 从此端点加载配置。
providers.http.headers.name 定义发送到端点的自定义请求头。
providers.http.maxresponsebodysize 定义响应体的最大大小,单位为字节。 -1
providers.http.pollinterval 端点的轮询间隔。 5
providers.http.polltimeout 端点的轮询超时时间。 5
providers.http.tls.ca TLS CA 证书
providers.http.tls.cert TLS 证书
providers.http.tls.insecureskipverify TLS 跳过安全验证 false
providers.http.tls.key TLS 私钥
providers.knative 启用 Knative 提供者。 false
providers.knative.certauthfilepath Kubernetes 证书颁发机构文件路径(集群内客户端不需要)。
providers.knative.endpoint Kubernetes 服务器端点(集群外客户端必需)。
providers.knative.labelselector 要使用的 Kubernetes 标签选择器。
providers.knative.namespaces Kubernetes 命名空间。
providers.knative.privateentrypoints 私下暴露 Ingress 时使用的入口点名称。为空时跳过本地 Ingress。
providers.knative.privateservice 私下暴露网络控制器时使用的 Kubernetes 服务。
providers.knative.privateservice.name Kubernetes 服务的名称。
providers.knative.privateservice.namespace Kubernetes 服务的命名空间。
providers.knative.publicentrypoints 公开暴露 Ingress 时使用的入口点名称。为空时,在所有入口点上暴露 Ingress。
providers.knative.publicservice 公开暴露网络控制器时使用的 Kubernetes 服务。
providers.knative.publicservice.name Kubernetes 服务的名称。
providers.knative.publicservice.namespace Kubernetes 服务的命名空间。
providers.knative.throttleduration Ingress 刷新的节流时长 0
providers.knative.token Kubernetes 持有者令牌(集群内客户端不需要)。
providers.kubernetescrd 启用 Kubernetes CRD 提供者。 false
providers.kubernetescrd.allowcrossnamespace 允许跨命名空间资源引用。 false
providers.kubernetescrd.allowemptyservices 允许创建没有端点的服务。 false
providers.kubernetescrd.allowexternalnameservices 允许 ExternalName 服务。 false
providers.kubernetescrd.certauthfilepath Kubernetes 证书颁发机构文件路径(集群内客户端不需要)。
providers.kubernetescrd.crossprovidernamespaces 允许 IngressRoute、IngressRouteTCP、IngressRouteUDP 和 TraefikService 声明跨提供者引用的命名空间列表。
providers.kubernetescrd.defaulttlsresourcesnamespace 允许定义默认 TLSOption 和 TLSStore 资源的命名空间。为空时可在任意命名空间定义。
providers.kubernetescrd.disableclusterscoperesources 禁用集群范围资源的查询(与 IngressClass 和启用 NodePortLB 的服务不兼容)。 false
providers.kubernetescrd.endpoint Kubernetes 服务器端点(集群外客户端必需)。
providers.kubernetescrd.ingressclass 要监听的 ingressClassName 字段值或 kubernetes.io/ingress.class 注解值。
providers.kubernetescrd.labelselector 要使用的 Kubernetes 标签选择器。
providers.kubernetescrd.namespaces Kubernetes 命名空间。
providers.kubernetescrd.nativelbbydefault 定义是否默认使用 Kubernetes 原生负载均衡模式。 false
providers.kubernetescrd.safenaming 为 Kubernetes CRD 提供者启用避免命名冲突的名称生成方式。 false
providers.kubernetescrd.throttleduration Ingress 刷新的节流时长 0
providers.kubernetescrd.token Kubernetes 持有者令牌(集群内客户端不需要)。接受令牌值或令牌文件路径。
providers.kubernetesgateway 启用 Kubernetes Gateway API 提供者。 false
providers.kubernetesgateway.burst 定义对 Kubernetes API 服务器请求的最大突发数量。 100
providers.kubernetesgateway.certauthfilepath Kubernetes 证书颁发机构文件路径(集群内客户端不需要)。
providers.kubernetesgateway.crossprovidernamespaces 允许 Gateway API 路由声明 TraefikService backendRef 引用的命名空间列表。
providers.kubernetesgateway.endpoint Kubernetes 服务器端点(集群外客户端必需)。
providers.kubernetesgateway.experimentalchannel 切换实验通道资源支持(TCPRoute、TLSRoute 等)。需要实验通道 CRD。 false
providers.kubernetesgateway.gateways 将提供者限定到特定 Gateway。
providers.kubernetesgateway.gateways[0].name 定义资源名称。
providers.kubernetesgateway.gateways[0].namespace 定义资源命名空间。
providers.kubernetesgateway.labelselector 用于选择特定 GatewayClass 的 Kubernetes 标签选择器。
providers.kubernetesgateway.namespaces Kubernetes 命名空间。
providers.kubernetesgateway.nativelbbydefault 定义是否默认使用 Kubernetes 原生负载均衡。 false
providers.kubernetesgateway.qps 定义对 Kubernetes API 服务器的最大 QPS。设为负值时禁用客户端限流。 50
providers.kubernetesgateway.statusaddress.hostname 用于 Kubernetes Gateway 状态地址的主机名。
providers.kubernetesgateway.statusaddress.ip 设置 Kubernetes Gateway 状态地址所使用的 IP。
providers.kubernetesgateway.statusaddress.service 从中复制状态地址的已发布 Kubernetes Service。
providers.kubernetesgateway.statusaddress.service.name Kubernetes 服务的名称。
providers.kubernetesgateway.statusaddress.service.namespace Kubernetes 服务的命名空间。
providers.kubernetesgateway.throttleduration Kubernetes 刷新的节流时长 0
providers.kubernetesgateway.token Kubernetes 持有者令牌(集群内客户端不需要)。接受令牌值或令牌文件路径。
providers.kubernetesingress 启用 Kubernetes Ingress 提供者。 false
providers.kubernetesingress.allowemptyservices 允许创建没有端点的服务。 false
providers.kubernetesingress.allowexternalnameservices 允许 ExternalName 服务。 false
providers.kubernetesingress.certauthfilepath Kubernetes 证书颁发机构文件路径(集群内客户端不需要)。
providers.kubernetesingress.crossprovidernamespaces 允许 Ingress 或 Service 声明 Middleware、TLSOption 或 ServersTransport 引用的命名空间列表。
providers.kubernetesingress.disableclusterscoperesources 禁用集群范围资源的查询(与 IngressClass 和启用 NodePortLB 的服务不兼容)。 false
providers.kubernetesingress.disableingressclasslookup 禁用 IngressClass 查询(已弃用,请使用 DisableClusterScopeResources)。 false
providers.kubernetesingress.endpoint Kubernetes 服务器端点(集群外客户端必需)。
providers.kubernetesingress.ingressclass 要监听的 kubernetes.io/ingress.class 注解值或 IngressClass 名称。
providers.kubernetesingress.ingressendpoint.hostname 用于 Kubernetes Ingress 端点的主机名。
providers.kubernetesingress.ingressendpoint.ip 用于 Kubernetes Ingress 端点的 IP。
providers.kubernetesingress.ingressendpoint.publishedservice 从中复制状态的已发布 Kubernetes Service。
providers.kubernetesingress.labelselector 要使用的 Kubernetes Ingress 标签选择器。
providers.kubernetesingress.namespaces Kubernetes 命名空间。
providers.kubernetesingress.nativelbbydefault 定义是否默认使用 Kubernetes 原生负载均衡模式。 false
providers.kubernetesingress.strictprefixmatching 使前缀匹配严格遵循 Kubernetes Ingress 规范(按路径元素匹配,而非逐字符字符串匹配)。 false
providers.kubernetesingress.throttleduration Ingress 刷新的节流时长 0
providers.kubernetesingress.token Kubernetes 持有者令牌(集群内客户端不需要)。接受令牌值或令牌文件路径。
providers.kubernetesingressnginx 启用 Kubernetes Ingress NGINX 提供者。 false
providers.kubernetesingressnginx.allowcrossnamespaceresources 允许 Ingress 引用不同命名空间中的资源(例如 ConfigMap、Secret)。 false
providers.kubernetesingressnginx.allowsnippetannotations 允许解析和添加 -snippet 注解/指令。 false
providers.kubernetesingressnginx.certauthfilepath Kubernetes 证书颁发机构文件路径(集群内客户端不需要)。
providers.kubernetesingressnginx.clientbodybuffersize 读取客户端请求体时的默认缓冲区大小。 16384
providers.kubernetesingressnginx.controllerclass 此控制器所匹配的 Ingress Class Controller 值。 k8s.io/ingress-nginx
providers.kubernetesingressnginx.customhttperrors 定义哪些状态会触发调用默认后端以返回错误页面。
providers.kubernetesingressnginx.defaultbackendservice 处理与任何已知服务器名称都不匹配的 HTTP 请求的服务(兜底服务)。格式为 'namespace/name'。
providers.kubernetesingressnginx.disablesvcexternalname 禁用对 ExternalName 类型 Service 的支持。 false
providers.kubernetesingressnginx.endpoint Kubernetes 服务器端点(集群外客户端必需)。
providers.kubernetesingressnginx.globalallowedresponseheaders 自定义 HTTP 头注解中允许的响应头列表。
providers.kubernetesingressnginx.globalauthurl 为所有 location 提供认证的服务 URL。每个 Ingress 上的 auth-url 注解优先于此选项。
providers.kubernetesingressnginx.httpentrypoint 定义 HTTP 请求使用的入口点。
providers.kubernetesingressnginx.httpsentrypoint 定义 HTTPS 请求使用的入口点。
providers.kubernetesingressnginx.ingressclass 此控制器所匹配的 Ingress 类名称。 nginx
providers.kubernetesingressnginx.ingressclassbyname 定义 Ingress 控制器是否应在匹配控制器类的同时按名称监听 Ingress 类。 false
providers.kubernetesingressnginx.ipallowliststrategy.depth 0
providers.kubernetesingressnginx.ipallowliststrategy.excludedips
providers.kubernetesingressnginx.ipallowliststrategy.ipv6subnet 0
providers.kubernetesingressnginx.proxybodysize 客户端请求体的默认最大大小,单位为字节。 1048576
providers.kubernetesingressnginx.proxybuffering 定义是否启用响应缓冲。 false
providers.kubernetesingressnginx.proxybuffersize 读取响应体时的默认缓冲区大小。 8192
providers.kubernetesingressnginx.proxybuffersnumber 读取响应时的默认缓冲区数量。 4
providers.kubernetesingressnginx.proxyconnecttimeout 等待建立服务器连接的时长。超时值不带单位,以秒计。 60
providers.kubernetesingressnginx.proxynextupstream 定义在哪些情况下重试请求。 error timeout
providers.kubernetesingressnginx.proxynextupstreamtimeout 后端服务器未响应时,限制重试请求所花费的总时长。超时值不带单位,以秒计。 0
providers.kubernetesingressnginx.proxynextupstreamtries 后端服务器未响应时,限制可尝试的次数。 3
providers.kubernetesingressnginx.proxyreadtimeout 两次连续读取操作之间的时长。超时值不带单位,以秒计。 60
providers.kubernetesingressnginx.proxyrequestbuffering 定义是否启用请求缓冲。 false
providers.kubernetesingressnginx.proxysendtimeout 两次连续写入操作之间的时长。超时值不带单位,以秒计。 60
providers.kubernetesingressnginx.publishservice 位于 Ingress 控制器之前的服务。格式为 'namespace/name'。
providers.kubernetesingressnginx.publishstatusaddress 自定义地址(多个地址以逗号分隔),用于设置此控制器所匹配的 Ingress 对象的负载均衡器状态。
providers.kubernetesingressnginx.strictvalidatepathtype 定义当任意路径包含正则表达式字符且 pathType 为 Prefix 或 Exact 时,是否拒绝整个 Ingress。 true
providers.kubernetesingressnginx.throttleduration Ingress 刷新的节流时长。 0
providers.kubernetesingressnginx.token Kubernetes 持有者令牌(集群内客户端不需要)。接受令牌值或令牌文件路径。
providers.kubernetesingressnginx.upstreamkeepalivetimeout 定义到上游服务器的保持活动连接的空闲超时时间。超时值不带单位,以秒计。 60
providers.kubernetesingressnginx.watchingresswithoutclass 定义 Ingress 控制器是否也应监听未指定 IngressClass 或注解的 Ingress。 false
providers.kubernetesingressnginx.watchnamespace 控制器监听 Kubernetes 对象更新的命名空间。此参数为空时监听所有命名空间。
providers.kubernetesingressnginx.watchnamespaceselector 此选择器用于选择控制器监听 Kubernetes 对象更新的命名空间。
providers.nomad 启用 Nomad 提供者。 false
providers.nomad.allowemptyservices 允许创建没有端点的服务。 false
providers.nomad.constraints Constraints 是 Traefik 与 Nomad 服务标签匹配的表达式,用于决定是否为该服务创建路由。
providers.nomad.defaultrule 默认规则。 Host({{ normalize .Name }})
providers.nomad.endpoint.address Nomad 服务器地址,包括协议和端口。 http://127.0.0.1:4646
providers.nomad.endpoint.endpointwaittime WaitTime 限制 Watch 的阻塞时长。如未提供,则使用代理的默认值 0
providers.nomad.endpoint.region 要使用的 Nomad 区域。如未提供,则使用本地代理的区域。
providers.nomad.endpoint.tls.ca TLS CA 证书
providers.nomad.endpoint.tls.cert TLS 证书
providers.nomad.endpoint.tls.insecureskipverify TLS 跳过安全验证 false
providers.nomad.endpoint.tls.key TLS 私钥
providers.nomad.endpoint.token Token 用于提供每个请求的 ACL 令牌。
providers.nomad.exposedbydefault 默认暴露 Nomad 服务。 true
providers.nomad.namespaces 设置用于发现服务的 Nomad 命名空间。
providers.nomad.prefix Nomad 服务标签的前缀。 traefik
providers.nomad.refreshinterval 轮询 Nomad API 的间隔。 15
providers.nomad.stale 读取目录时使用过时一致性。 false
providers.nomad.throttleduration 监听的节流时长。 0
providers.nomad.watch 监听 Nomad 服务事件。 false
providers.plugin.name 插件配置。
providers.precedence 定义提供者之间的路由优先顺序。 kubernetesgateway, kubernetescrd, kubernetes, kubernetesingressnginx, swarm, docker, file, redis, knative, consul, consulcatalog, nomad, etcd, ecs, http, zookeeper, rest
providers.providersthrottleduration 后端节流时长:在应用新配置之前,提供者两次事件之间的最短时长。避免短时间内发送多个事件造成不必要的重新加载。 2
providers.redis 启用 Redis 提供者。 false
providers.redis.db 连接服务器后要选择的数据库。 0
providers.redis.endpoints KV 存储端点。 127.0.0.1:6379
providers.redis.password 认证密码。
providers.redis.rootkey KV 存储使用的根键。 traefik
providers.redis.sentinel.latencystrategy 定义是否将命令路由到最近的主节点或副本节点(与 RandomStrategy 和 ReplicaStrategy 互斥)。 false
providers.redis.sentinel.mastername 主节点的名称。
providers.redis.sentinel.password Sentinel 认证密码。
providers.redis.sentinel.randomstrategy 定义是否将命令随机路由到主节点或副本节点(与 LatencyStrategy 和 ReplicaStrategy 互斥)。 false
providers.redis.sentinel.replicastrategy 定义是否将所有命令路由到副本节点(与 LatencyStrategy 和 RandomStrategy 互斥)。 false
providers.redis.sentinel.usedisconnectedreplicas 无法获取已连接的副本时,使用已与主节点断开连接的副本。 false
providers.redis.sentinel.username Sentinel 认证用户名。
providers.redis.tls.ca TLS CA 证书
providers.redis.tls.cert TLS 证书
providers.redis.tls.insecureskipverify TLS 跳过安全验证 false
providers.redis.tls.key TLS 私钥
providers.redis.username 认证用户名。
providers.rest 启用 Rest 提供者。 false
providers.rest.insecure 直接在名为 traefik 的入口点上启用 REST 提供者。 false
providers.swarm 启用 Docker Swarm 提供者。 false
providers.swarm.allowemptyservices 创建或移除对应服务时,忽略 Docker 容器健康检查。 false
providers.swarm.constraints Constraints 是 Traefik 与容器标签匹配的表达式,用于决定是否为该容器创建路由。
providers.swarm.defaultrule 默认规则。 Host({{ normalize .Name }})
providers.swarm.endpoint Docker 服务器端点。可以是 TCP 或 Unix 套接字端点。 unix:///var/run/docker.sock
providers.swarm.exposedbydefault 默认暴露容器。 true
providers.swarm.httpclienttimeout HTTP 连接的客户端超时时间。 0
providers.swarm.network 默认使用的 Docker 网络。
providers.swarm.password HTTP 基本认证的密码。
providers.swarm.refreshseconds Swarm 模式的轮询间隔。 15
providers.swarm.tls.ca TLS CA 证书
providers.swarm.tls.cert TLS 证书
providers.swarm.tls.insecureskipverify TLS 跳过安全验证 false
providers.swarm.tls.key TLS 私钥
providers.swarm.usebindportip 使用绑定端口的 IP 地址,而不是内部网络的 IP 地址。 false
providers.swarm.username HTTP 基本认证的用户名。
providers.swarm.watch 监听 Docker 事件。 true
providers.zookeeper 启用 ZooKeeper 提供者。 false
providers.zookeeper.endpoints KV 存储端点。 127.0.0.1:2181
providers.zookeeper.password 认证密码。
providers.zookeeper.rootkey KV 存储使用的根键。 traefik
providers.zookeeper.username 认证用户名。
serverstransport.forwardingtimeouts.dialtimeout 等待建立后端服务器连接的时长。为零时不设超时。 30
serverstransport.forwardingtimeouts.idleconntimeout 空闲 HTTP 保持活动连接在自行关闭之前可保持打开的最长时长 90
serverstransport.forwardingtimeouts.responseheadertimeout 完整写入请求(包括请求体,如果有)后等待服务器响应头的时长。为零时不设超时。 0
serverstransport.insecureskipverify 禁用 SSL 证书验证。 false
serverstransport.maxidleconnsperhost 非零时,控制每个主机保留的最大空闲(保持活动)连接数。为零时使用 DefaultMaxIdleConnsPerHost。为负值时禁用连接复用。 200
serverstransport.rootcas 添加用于自签名证书的证书文件。
serverstransport.spiffe 定义 SPIFFE 配置。 false
serverstransport.spiffe.ids 定义允许的 SPIFFE ID(优先于 SPIFFE TrustDomain)。
serverstransport.spiffe.trustdomain 定义允许的 SPIFFE 信任域。
spiffe.workloadapiaddr 定义工作负载 API 地址。
tcpserverstransport.dialkeepalive 定义活动网络连接的保活探测间隔。为零且协议和操作系统支持时,使用默认值(当前为 15 秒)发送保活探测。不支持保活的网络协议或操作系统会忽略此字段。为负值时禁用保活探测 15
tcpserverstransport.dialtimeout 定义等待建立后端服务器连接的时长。为零时不设超时。 30
tcpserverstransport.terminationdelay 定义一个连接对端关闭写入能力后,到完全终止连接之前的等待时长。 0
tcpserverstransport.tls 定义 TLS 配置。 false
tcpserverstransport.tls.insecureskipverify 禁用 SSL 证书验证。 false
tcpserverstransport.tls.rootcas 定义用于验证自签名证书的 CA Secret 列表
tcpserverstransport.tls.spiffe 定义 SPIFFE TLS 配置。 false
tcpserverstransport.tls.spiffe.ids 定义允许的 SPIFFE ID(优先于 SPIFFE TrustDomain)。
tcpserverstransport.tls.spiffe.trustdomain 定义允许的 SPIFFE 信任域。
tracing 链路追踪配置。 false
tracing.addinternals 为内部服务(ping、仪表板等)启用链路追踪。 false
tracing.capturedrequestheaders 作为属性添加到服务器和客户端 span 的请求头。
tracing.capturedresponseheaders 作为属性添加到服务器和客户端 span 的响应头。
tracing.globalattributes.name (已弃用)定义附加资源属性(key:value)。
tracing.otlp OpenTelemetry 设置。 false
tracing.otlp.grpc OpenTelemetry 收集器的 gRPC 配置。 false
tracing.otlp.grpc.endpoint 设置收集器的 gRPC 端点(host:port)。 localhost:4317
tracing.otlp.grpc.headers.name 随载荷发送的请求头。
tracing.otlp.grpc.insecure 为导出器禁用客户端传输安全。 false
tracing.otlp.grpc.tls.ca TLS CA 证书
tracing.otlp.grpc.tls.cert TLS 证书
tracing.otlp.grpc.tls.insecureskipverify TLS 跳过安全验证 false
tracing.otlp.grpc.tls.key TLS 私钥
tracing.otlp.http OpenTelemetry 收集器的 HTTP 配置。 false
tracing.otlp.http.endpoint 设置收集器的 HTTP 端点(scheme://host:port/path)。 https://localhost:4318
tracing.otlp.http.headers.name 随载荷发送的请求头。
tracing.otlp.http.tls.ca TLS CA 证书
tracing.otlp.http.tls.cert TLS 证书
tracing.otlp.http.tls.insecureskipverify TLS 跳过安全验证 false
tracing.otlp.http.tls.key TLS 私钥
tracing.resourceattributes.name 定义附加资源属性(key:value)。
tracing.safequeryparams 不脱敏的查询参数。
tracing.samplerate 设置要进行链路追踪的请求比例,介于 0.0 和 1.0 之间。 1.000000
tracing.servicename 定义服务名称资源属性。 traefik

版权所有 © 头文件软件工作室

文档由 HeadFile Studio 翻译。

Traefik v3.7 中文快照 · 原文版权归 Traefik Labs 及贡献者所有 · MIT 许可证