387 lines
7 KiB
TOML
387 lines
7 KiB
TOML
################################################################
|
|
# Global configuration
|
|
################################################################
|
|
|
|
# Reverse proxy port
|
|
#
|
|
# Optional
|
|
# Default: ":80"
|
|
#
|
|
# port = ":80"
|
|
|
|
# Timeout in seconds.
|
|
# Duration to give active requests a chance to finish during hot-reloads
|
|
#
|
|
# Optional
|
|
# Default: 10
|
|
#
|
|
# graceTimeOut = 10
|
|
|
|
# Traefik logs file
|
|
# If not defined, logs to stdout
|
|
#
|
|
# Optional
|
|
#
|
|
# traefikLogsFile = "log/traefik.log"
|
|
|
|
# Access logs file
|
|
#
|
|
# Optional
|
|
#
|
|
# accessLogsFile = "log/access.log"
|
|
|
|
# Log level
|
|
#
|
|
# Optional
|
|
# Default: "ERROR"
|
|
#
|
|
# logLevel = "ERROR"
|
|
|
|
# SSL certificates and keys
|
|
# You may add several certificate/key pairs to terminate HTTPS for multiple domain names using TLS SNI
|
|
#
|
|
# Optional
|
|
#
|
|
# [[certificates]]
|
|
# CertFile = "traefik.crt"
|
|
# KeyFile = "traefik.key"
|
|
|
|
# Backends throttle duration: minimum duration between 2 events from providers
|
|
# before applying a new configuration. It avoids unnecessary reloads if multiples events
|
|
# are sent in a short amount of time.
|
|
#
|
|
# Optional
|
|
# Default: "2s"
|
|
#
|
|
# ProvidersThrottleDuration = "5s"
|
|
|
|
|
|
################################################################
|
|
# Web configuration backend
|
|
################################################################
|
|
|
|
# Enable web configuration backend
|
|
#
|
|
# Optional
|
|
#
|
|
# [web]
|
|
|
|
# Web administration port
|
|
#
|
|
# Required
|
|
#
|
|
# address = ":8080"
|
|
|
|
# SSL certificate and key used
|
|
#
|
|
# Optional
|
|
#
|
|
# CertFile = "traefik.crt"
|
|
# KeyFile = "traefik.key"
|
|
#
|
|
# Set REST API to read-only mode
|
|
#
|
|
# Optional
|
|
# ReadOnly = false
|
|
|
|
|
|
################################################################
|
|
# File configuration backend
|
|
################################################################
|
|
|
|
# Enable file configuration backend
|
|
#
|
|
# Optional
|
|
#
|
|
# [file]
|
|
|
|
# Rules file
|
|
# If defined, traefik will load rules from this file,
|
|
# otherwise, it will load rules from current file (cf Sample rules below).
|
|
#
|
|
# Optional
|
|
#
|
|
# filename = "rules.toml"
|
|
|
|
# Enable watch file changes
|
|
#
|
|
# Optional
|
|
#
|
|
# watch = true
|
|
|
|
|
|
################################################################
|
|
# Docker configuration backend
|
|
################################################################
|
|
|
|
# Enable Docker configuration backend
|
|
#
|
|
# Optional
|
|
#
|
|
# [docker]
|
|
|
|
# Docker server endpoint. Can be a tcp or a unix socket endpoint.
|
|
#
|
|
# Required
|
|
#
|
|
# endpoint = "unix:///var/run/docker.sock"
|
|
|
|
# Default domain used.
|
|
# Can be overridden by setting the "traefik.domain" label on a container.
|
|
#
|
|
# Required
|
|
#
|
|
# domain = "docker.localhost"
|
|
|
|
# Enable watch docker changes
|
|
#
|
|
# Optional
|
|
#
|
|
# watch = true
|
|
|
|
# Override default configuration template. For advanced users :)
|
|
#
|
|
# Optional
|
|
#
|
|
# filename = "docker.tmpl"
|
|
|
|
# Enable docker TLS connection
|
|
#
|
|
# Optional
|
|
#
|
|
# [docker.tls]
|
|
# ca = "/etc/ssl/ca.crt"
|
|
# cert = "/etc/ssl/docker.crt"
|
|
# key = "/etc/ssl/docker.key"
|
|
# insecureskipverify = true
|
|
|
|
|
|
################################################################
|
|
# Mesos/Marathon configuration backend
|
|
################################################################
|
|
|
|
# Enable Marathon configuration backend
|
|
#
|
|
# Optional
|
|
#
|
|
# [marathon]
|
|
|
|
# Marathon server endpoint.
|
|
# You can also specify multiple endpoint for Marathon:
|
|
# endpoint := "http://10.241.1.71:8080,10.241.1.72:8080,10.241.1.73:8080"
|
|
#
|
|
# Required
|
|
#
|
|
# endpoint = "http://127.0.0.1:8080"
|
|
|
|
# Network interface used to call Marathon web services. Needed in case of multiple network interfaces.
|
|
# Optional
|
|
# Default: "eth0"
|
|
#
|
|
# networkInterface = "eth0"
|
|
|
|
# Enable watch Marathon changes
|
|
#
|
|
# Optional
|
|
#
|
|
# watch = true
|
|
|
|
# Default domain used.
|
|
# Can be overridden by setting the "traefik.domain" label on an application.
|
|
#
|
|
# Required
|
|
#
|
|
# domain = "marathon.localhost"
|
|
|
|
# Override default configuration template. For advanced users :)
|
|
#
|
|
# Optional
|
|
#
|
|
# filename = "marathon.tmpl"
|
|
|
|
# Enable Marathon basic authentication
|
|
#
|
|
# Optional
|
|
#
|
|
# [marathon.basic]
|
|
# httpBasicAuthUser = "foo"
|
|
# httpBasicPassword = "bar"
|
|
|
|
|
|
################################################################
|
|
# Consul KV configuration backend
|
|
################################################################
|
|
|
|
# Enable Consul KV configuration backend
|
|
#
|
|
# Optional
|
|
#
|
|
# [consul]
|
|
|
|
# Consul server endpoint
|
|
#
|
|
# Required
|
|
#
|
|
# endpoint = "127.0.0.1:8500"
|
|
|
|
# Enable watch Consul changes
|
|
#
|
|
# Optional
|
|
#
|
|
# watch = true
|
|
|
|
# Prefix used for KV store.
|
|
#
|
|
# Optional
|
|
#
|
|
# prefix = "/traefik"
|
|
|
|
# Override default configuration template. For advanced users :)
|
|
#
|
|
# Optional
|
|
#
|
|
# filename = "consul.tmpl"
|
|
|
|
|
|
################################################################
|
|
# Etcd configuration backend
|
|
################################################################
|
|
|
|
# Enable Etcd configuration backend
|
|
#
|
|
# Optional
|
|
#
|
|
# [etcd]
|
|
|
|
# Etcd server endpoint
|
|
#
|
|
# Required
|
|
#
|
|
# endpoint = "127.0.0.1:4001"
|
|
|
|
# Enable watch Etcd changes
|
|
#
|
|
# Optional
|
|
#
|
|
# watch = true
|
|
|
|
# Prefix used for KV store.
|
|
#
|
|
# Optional
|
|
#
|
|
# prefix = "/traefik"
|
|
|
|
# Override default configuration template. For advanced users :)
|
|
#
|
|
# Optional
|
|
#
|
|
# filename = "etcd.tmpl"
|
|
|
|
|
|
################################################################
|
|
# Zookeeper configuration backend
|
|
################################################################
|
|
|
|
# Enable Zookeeperconfiguration backend
|
|
#
|
|
# Optional
|
|
#
|
|
# [zookeeper]
|
|
|
|
# Zookeeper server endpoint
|
|
#
|
|
# Required
|
|
#
|
|
# endpoint = "127.0.0.1:2181"
|
|
|
|
# Enable watch Zookeeper changes
|
|
#
|
|
# Optional
|
|
#
|
|
# watch = true
|
|
|
|
# Prefix used for KV store.
|
|
#
|
|
# Optional
|
|
#
|
|
# prefix = "/traefik"
|
|
|
|
# Override default configuration template. For advanced users :)
|
|
#
|
|
# Optional
|
|
#
|
|
# filename = "zookeeper.tmpl"
|
|
|
|
|
|
################################################################
|
|
# BoltDB configuration backend
|
|
################################################################
|
|
|
|
# Enable BoltDB configuration backend
|
|
#
|
|
# Optional
|
|
#
|
|
# [boltdb]
|
|
|
|
# BoltDB file
|
|
#
|
|
# Required
|
|
#
|
|
# endpoint = "/my.db"
|
|
|
|
# Enable watch BoltDB changes
|
|
#
|
|
# Optional
|
|
#
|
|
# watch = true
|
|
|
|
# Prefix used for KV store.
|
|
#
|
|
# Optional
|
|
#
|
|
# prefix = "/traefik"
|
|
|
|
# Override default configuration template. For advanced users :)
|
|
#
|
|
# Optional
|
|
#
|
|
# filename = "boltdb.tmpl"
|
|
|
|
|
|
|
|
|
|
################################################################
|
|
# Sample rules
|
|
################################################################
|
|
# [backends]
|
|
# [backends.backend1]
|
|
# [backends.backend1.circuitbreaker]
|
|
# expression = "NetworkErrorRatio() > 0.5"
|
|
# [backends.backend1.servers.server1]
|
|
# url = "http://172.17.0.2:80"
|
|
# weight = 10
|
|
# [backends.backend1.servers.server2]
|
|
# url = "http://172.17.0.3:80"
|
|
# weight = 1
|
|
# [backends.backend2]
|
|
# [backends.backend2.LoadBalancer]
|
|
# method = "drr"
|
|
# [backends.backend2.servers.server1]
|
|
# url = "http://172.17.0.4:80"
|
|
# weight = 1
|
|
# [backends.backend2.servers.server2]
|
|
# url = "http://172.17.0.5:80"
|
|
# weight = 2
|
|
#
|
|
# [frontends]
|
|
# [frontends.frontend1]
|
|
# backend = "backend2"
|
|
# [frontends.frontend1.routes.test_1]
|
|
# rule = "Host"
|
|
# value = "test.localhost"
|
|
# [frontends.frontend2]
|
|
# backend = "backend1"
|
|
# passHostHeader = true
|
|
# [frontends.frontend2.routes.test_2]
|
|
# rule = "Path"
|
|
# value = "/test"
|