Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Traefik

Unser Reverse Proxy

Options

teenix.services.traefik.enable

Whether to enable traefik.

Type: boolean

Default: false

Example: true

teenix.services.traefik.dashboard.enable

Whether so serve the traefik dashboard.

It will only be accessible from within the PhyNIx HHU Subnet

Type: boolean

Default: false

Example: true

teenix.services.traefik.dashboard.url

url to serve the dashboard on

Type: non-empty string

teenix.services.traefik.dynamicConfig

Traefik’s dynamic config options.

This is passed through sops-nix templating, so you can use sops.placeholders to insert secrets into the config

Type: YAML 1.1 value

Default: { }

teenix.services.traefik.entryPoints

Traefik’s entrypoints, as defined in the static config

Type: null or (attribute set of (submodule))

Default: null

teenix.services.traefik.entryPoints.<name>.extraConfig

Extra config options for this entrypoint

Type: YAML 1.1 value

Default: { }

teenix.services.traefik.entryPoints.<name>.host

Host address to bind this entrypoint on. Leave empty (default) for all host addresses

Type: string

Default: ""

teenix.services.traefik.entryPoints.<name>.port

Port of this entrypoint

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

teenix.services.traefik.entryPoints.<name>.protocol

Protocol of this entrypoint

Type: one of “tcp”, “udp”

Default: "tcp"

teenix.services.traefik.httpMiddlewares

Traefik’s middlewares, as defined in the dynamic config

Type: null or YAML 1.1 value

Default: null

teenix.services.traefik.httpServices

http based services, each using a single per-service router

Type: null or (attribute set of (submodule))

Default: null

teenix.services.traefik.httpServices.<name>.extraConfig

Extra config options for this services, as defined in the dynamic config

Type: YAML 1.1 value

Default: { }

teenix.services.traefik.httpServices.<name>.healthCheck.enable

Whether to enable health checking for this service.

Type: boolean

Default: true

Example: true

teenix.services.traefik.httpServices.<name>.healthCheck.interval

Interval between health checks

Type: non-empty string

Default: "10s"

teenix.services.traefik.httpServices.<name>.healthCheck.path

Path to healthcheck on

Type: string

Default: "/"

teenix.services.traefik.httpServices.<name>.router.entryPoints

Entry Points for this router

Http Services uses websecure as default

Type: list of non-empty string

Default: [ ]

teenix.services.traefik.httpServices.<name>.router.extraConfig

Extra config options for this router

Type: YAML 1.1 value

Default: { }

teenix.services.traefik.httpServices.<name>.router.middlewares

List of middlewares for this router

Type: list of non-empty string

Default: [ ]

teenix.services.traefik.httpServices.<name>.router.rule

Rule for this router, see https://doc.traefik.io/traefik/routing/routers/#configuring-http-routers

Type: non-empty string

teenix.services.traefik.httpServices.<name>.router.tls.enable

Whether to enable tls for this router.

Type: boolean

Default: true

Example: true

teenix.services.traefik.httpServices.<name>.router.tls.certResolver

Certificate resolver to use for this router

Type: non-empty string

Default: "letsencrypt"

teenix.services.traefik.httpServices.<name>.servers

Hosts for this service

Type: list of non-empty string

Default: [ ]

teenix.services.traefik.letsencryptMail

The email address used for letsencrypt certificates

Type: non-empty string

teenix.services.traefik.redirects

Redirect one URL to another

Type: null or (attribute set of (submodule))

Default: null

Example:

{
  fscs_phynix = {
    from = "fscs.phynix-hhu.de";
    to = "fscs.hhu.de";
  };
}

teenix.services.traefik.redirects.<name>.from

Domain to redirect from

Type: string

teenix.services.traefik.redirects.<name>.to

Domain to redirect to

Type: string

teenix.services.traefik.secretsFile

path to the secrets file for traefik

Type: absolute path

Example: ./secrets/myservice.yml

teenix.services.traefik.staticConfig

Traefik’s static config options.

This is passed through sops-nix templating, so you can use sops.placeholders to insert secrets into the config

Type: YAML 1.1 value

Default: { }

teenix.services.traefik.tcpMiddlewares

Traefik’s middlewares, as defined in the dynamic config

Type: null or YAML 1.1 value

Default: null

teenix.services.traefik.tcpServices

tcp based services, each using a single per-service router

Type: null or (attribute set of (submodule))

Default: null

teenix.services.traefik.tcpServices.<name>.extraConfig

Extra config options for this services, as defined in the dynamic config

Type: YAML 1.1 value

Default: { }

teenix.services.traefik.tcpServices.<name>.router.entryPoints

Entry Points for this router

Http Services uses websecure as default

Type: list of non-empty string

Default: [ ]

teenix.services.traefik.tcpServices.<name>.router.extraConfig

Extra config options for this router

Type: YAML 1.1 value

Default: { }

teenix.services.traefik.tcpServices.<name>.router.middlewares

List of middlewares for this router

Type: list of non-empty string

Default: [ ]

teenix.services.traefik.tcpServices.<name>.router.rule

Rule for this router, see https://doc.traefik.io/traefik/routing/routers/#configuring-http-routers

Type: non-empty string

teenix.services.traefik.tcpServices.<name>.router.tls.enable

Whether to enable tls for this router.

Type: boolean

Default: false

Example: true

teenix.services.traefik.tcpServices.<name>.router.tls.certResolver

Certificate resolver to use for this router

Type: non-empty string

Default: "letsencrypt"

teenix.services.traefik.tcpServices.<name>.servers

Hosts for this service

Type: list of non-empty string

Default: [ ]

teenix.services.traefik.udpServices

udp based services, each using a single per-service router

Type: null or (attribute set of (submodule))

Default: null

teenix.services.traefik.udpServices.<name>.extraConfig

Extra config options for this services, as defined in the dynamic config

Type: YAML 1.1 value

Default: { }

teenix.services.traefik.udpServices.<name>.router.entryPoints

Entry Points for this router

Type: list of non-empty string

Default: [ ]

teenix.services.traefik.udpServices.<name>.servers

Hosts for this service

Type: list of non-empty string

Default: [ ]