返回顶部
T

TraefikTraefik避坑指南

Avoid common Traefik mistakes — router priority, TLS configuration, Docker labels syntax, and middleware ordering.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
966
下载量
免费
免费
2
收藏
概述
安装方式
版本历史

Traefik

路由器基础

  • - 路由器必须包含rule和service——缺少任一配置则无法工作
  • 规则优先级:默认较长规则优先——可通过显式设置priority覆盖
  • Host()不区分大小写——Host(\example.com\)可匹配Example.com
  • 多主机配置:Host(\a.com\) || Host(\b.com\)——使用OR逻辑

Docker标签语法

  • - 标签应用于容器而非Compose服务层级——Swarm模式使用deploy.labels
  • Docker Compose中规则需使用反引号——Host(\example.com\)需转义
  • 按容器启用:traefik.enable=true——当exposedByDefault=false时生效
  • 服务名自动从容器生成——或通过traefik.http.services.myservice.loadbalancer.server.port=80显式设置

TLS与证书

  • - EntryPoint websecure需要TLS配置——否则443端口仅提供普通HTTP
  • Lets Encrypt:certificatesResolvers.myresolver.acme.email为必填项——缺失会导致注册失败
  • HTTP验证需要开放80端口——通配符证书或80端口关闭时使用DNS验证
  • 路由器上设置tls=true激活TLS——tls.certresolver=myresolver用于自动证书
  • 测试环境使用Staging ACME——caServer指向staging URL,避免速率限制

入口点

  • - 在静态配置中定义——--entrypoints.web.address=:80
  • 在入口点层级重定向HTTP到HTTPS——比逐路由器中间件更简洁
  • 路由器通过entryPoints=web,websecure绑定入口点——使用逗号分隔列表

中间件

  • - 链式顺序至关重要——首个中间件包裹所有后续中间件
  • 中间件定义一次,可被多个路由器使用——middlewares=auth,compress
  • 常用中间件:stripPrefix、redirectScheme、basicAuth、rateLimit
  • BasicAuth:使用htpasswd格式——在Docker Compose中用$$转义$符号

服务配置

  • - 容器暴露多个端口时需指定loadbalancer.server.port——Traefik无法自动识别
  • 健康检查:healthcheck.path=/health——自动移除不健康节点
  • 粘性会话:loadbalancer.sticky.cookie.name=srv_id——适用于有状态应用

常见错误

  • - 路由器未指定entryPoint——默认值可能不符合预期
  • 多网络环境下忘记设置traefik.docker.network——Traefik可能选择错误网络
  • ACME存储未持久化——证书会重新生成,触发速率限制
  • 仪表盘未加认证直接暴露——生产环境中api.insecure=true非常危险
  • 使用PathPrefix但未配置StripPrefix——后端收到完整路径,可能返回404
  • 服务使用不同端口——每个服务都需要显式端口标签

文件提供者

  • - 设置watch=true实现热重载——否则修改后需重启Traefik
  • 可与Docker提供者共存——适用于外部服务集成
  • 在YAML中定义路由器、服务、中间件——概念与标签配置相同

调试技巧

  • - 使用--log.level=DEBUG进行故障排查——信息详细但实用
  • 仪表盘可查看路由器、服务、中间件——验证配置是否正确
  • --api.insecure=true仅限本地开发——生产环境需配合认证使用

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 traefik-1776328447 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 traefik-1776328447 技能

通过命令行安装

skillhub install traefik-1776328447

下载

⬇ 下载 Traefik v1.0.0(免费)

文件大小: 2.08 KB | 发布时间: 2026-4-17 16:22

v1.0.0 最新 2026-4-17 16:22
Initial release

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部