Skip to content

traefik

Traefik ingress controller. Provides http for every consumer that needs it and binds dns for the zone.

providers.http = apps.traefik.main;
apps.traefik.main = {
ingressClassName = "traefik-edge";
};

Provides

http7 options
  • hostnull or string

    Fully qualified host. Defaults to the consumer DNS label under the bound zone.

    Default
    null
  • ingressClassNamenull or string

    Bound IngressClass. Written by the http provider.

    Default
    null
  • pathPrefixstring

    Path prefix the Ingress routes on.

    Default
    "/"
  • portnull or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

    Backend Service port. Defaults to the port the app declares.

    Default
    null
  • providernull or (podule provider reference (apps.<type>.<instance> or impl.<contract>.<name>))

    Overrides providers.http for this need.

    Default
    null
  • publicUrlnull or string

    Bound public URL, always https. Written by the http provider.

    Default
    null
  • tlsSecretNamenull or string

    Bound name of the TLS Secret. Written by the http provider.

    Default
    null

Needs

dns4 options
  • domainnull or string

    Bound zone, such as example.dev. Written by the dns provider.

    Default
    null
  • fqdnnull or string

    Bound fully qualified name. Written by the dns provider.

    Default
    null
  • namenull or string

    Record label. Defaults to the consumer DNS label.

    Default
    null
  • providernull or (podule provider reference (apps.<type>.<instance> or impl.<contract>.<name>))

    Overrides providers.dns for this need.

    Default
    null
  • ingressClassNamestring

    IngressClass Traefik serves.

    Default
    "traefik"
  • packagepackage

    Traefik package. Defaults to nixpkgs traefik.

    Default
    <derivation traefik-3.7.13>