静态配置
# 流量入口
entryPoints:
mysql:
address: :3307
web:
address: :80
# 动态配置
providers:
file:
filename: gateway/dynamic_conf.yml
# 工作日志
log:
filePath: gateway/log/traefik.log
# 访问日志
accessLog:
filePath: gateway/log/access.log
# 保留在内存中的日志行数
bufferingSize: 100
fields:
names:
# 设置本地时区,不然默认是0时区时间输出
StartLocal: keep
StartUTC: drop
api:
# false为启用安全访问
insecure: false
动态配置
tcp:
routers:
mysql:
rule: "HostSNI(`*`)"
service: mysql
entryPoints:
- mysql
services:
mysql:
loadBalancer:
servers:
- address: localhost:3306
http:
routers:
# traefik 内置web仪表盘
dashboard:
rule: "(PathPrefix(`/api`) || PathPrefix(`/dashboard`))"
# 内部api服务
service: api@internal
# 使用中间件,auth安全访问
middlewares:
- auth
entryPoints:
- web
middlewares:
# 定义一个中间件,任意起名
# 用户认证
auth:
# 使用官方的中间件
basicAuth:
usersFile: gateway/auth
auth文件(使用htpasswd生成密码)
用户test,密码123456
test:$apr1$yjHwJ6kr$szcYpC.dwpayQYlZu4N5d1
配置完毕,就可以使用链接访问
root:123456@tcp(localhost:3307)/数据库名?charset=utf8&parseTime=True&loc=Local