becker/traefik-http-provider

用于生成 Traefik 的 HTTP 提供器的库

0.3.3 2023-09-22 12:00 UTC

This package is auto-updated.

Last update: 2024-09-22 14:24:58 UTC


README

此包旨在提供 Traefik 的易于使用的 HTTP 提供器

HTTP 提供器可以设置为增量更新。

docker-compose 文件夹中有一个示例配置,其中包含一个 5 秒更新间隔的自包含设置。只要配置是有效的 JSON,就应该每 5 秒更新一次。

使用此包,配置将输出 Traefik 可读取的有效 JSON。

HTTP

服务

https://doc.traefik.io/traefik/routing/services/

将 Http 服务添加到配置 $config->setHttpService( <my-service>, <backend-url>);

返回的是 HttpService 类,\Traefik\Http\Service

使用 addServer( <backend-url> ) 可以添加更多后端 URL。

路由器

https://doc.traefik.io/traefik/routing/routers/

将 Http 路由器添加到配置 $config->setHttpRouter( <my-router>, <rule>, <my-service> )

使用数组添加入口点 ->setEntryPoints( [ <my-entrypoint> ] )

使用数组添加中间件 ->setMiddlewares( [ <my-middleware> ] )

添加 TLS 以启用 SSL ->setTls(true)

中间件

https://doc.traefik.io/traefik/middlewares/overview/

将 Http 中间件添加到配置 $config->addMiddleWare( <my-middleware>, <MiddlewareConfigInterface> )

可能的类

  • \Traefik\Middleware\Config\AddPrefix
  • \Traefik\Middleware\Config\BasicAuth
  • \Traefik\Middleware\Config\Buffering
  • \Traefik\Middleware\Config\Chain
  • \Traefik\Middleware\Config\CircuitBreaker
  • \Traefik\Middleware\Config\Compress
  • \Traefik\Middleware\Config\DigestAuth
  • \Traefik\Middleware\Config\ErrorPage
  • \Traefik\Middleware\Config\ForwardAuth
  • \Traefik\Middleware\Config\Headers
  • \Traefik\Middleware\Config\InFlightReq
  • \Traefik\Middleware\Config\IpWhiteList
  • \Traefik\Middleware\Config\PassTLSClientCert
  • \Traefik\Middleware\Config\RateLimit
  • \Traefik\Middleware\Config\RedirectRegex
  • \Traefik\Middleware\Config\RedirectScheme
  • \Traefik\Middleware\Config\ReplacePath
  • \Traefik\Middleware\Config\ReplacePathRegex
  • \Traefik\Middleware\Config\Retry
  • \Traefik\Middleware\Config\StripPrefix
  • \Traefik\Middleware\Config\StripPrefixRegex

Tcp

服务

https://doc.traefik.io/traefik/routing/services/#configuring-tcp-services

$config->setTcpService( <my-service>, <backend-url>)

路由器

https://doc.traefik.io/traefik/routing/routers/#configuring-tcp-routers

$config->setTcpRouter( <my-tcp-router>, <rule>, <my-tcp-service> ) ->setEntryPoints( [ <my-entrypoint> ] ) ->setTls(true)

Udp

服务

https://doc.traefik.io/traefik/routing/services/#configuring-udp-services

$config->setUpdService( <my-service>, <backend-url>)

路由器

https://doc.traefik.io/traefik/routing/routers/#configuring-udp-routers

$config->setUdpRouter( <my-udp-router>, <rule>, <my-udp-service> ) ->setEntryPoints( [ <my-entrypoint> ] ) ->setTls(true)

返回配置

echo $config->getJsonConfig()

待办事项

支持