version: '2' catalog: name: traefik version: v1.4.4-rancher1 description: | Traefik load balancer. minimum_rancher_version: v0.59.0 maintainer: "Raul Sanchez " uuid: traefik-0 questions: - variable: "rancher_integration" label: "Choose rancher integration:" description: | Enable rancher integration mode. Traefik built in integration, metadata or api, or external sidekick integration with confd. default: metadata required: true type: enum options: - metadata - api - external - variable: "rancher_healthcheck" description: | Enable/disable rancher services healtcheck filter. If enable, just healthy services will be published. Only valid for api and metadata integration. label: "Rancher healthcheck filter:" required: true default: false type: "boolean" - variable: "constraints" description: | Traefik constraints for rancher provider. Eg: "tag==api" Only valid for api and metadata integration. label: "Traefik constraints:" required: false default: "" type: "string" - variable: "host_label" description: "Host label where to run traefik service." label: "Host label:" required: true default: "traefik_lb=true" type: "string" - variable: "http_port" description: "Traefik http public port to listen." label: "Http port:" required: true default: 8080 type: "int" - variable: "https_port" description: "Traefik https public port to listen." label: "Https port:" required: true default: 8443 type: "int" - variable: "admin_port" description: "Traefik admin public port to listen." label: "Admin port:" required: true default: 8000 type: "int" - variable: "https_enable" label: "Https enable:" description: | Enable https working mode. If you activate, you need to fill SSL key and SSL crt in order to work. default: false required: true type: enum options: - false - true - only - variable: "acme_enable" description: "Enable acme support on traefik." label: "ACME enable:" required: true default: false type: "boolean" - variable: "acme_email" description: "ACME user email." label: "ACME email:" required: true default: "test@traefik.io" type: "string" - variable: "acme_ondemand" description: "Enable acme ondemand." label: "ACME ondemand:" required: true default: true type: "boolean" - variable: "acme_onhostrule" description: "Enable acme onHostRule." label: "ACME onHostRule:" required: true default: true type: "boolean" - variable: "acme_caserver" description: "ACME caServer to use." label: "ACME caServer:" required: true default: "https://acme-v01.api.letsencrypt.org/directory" type: "string" - variable: "acme_vol_name" description: "The volume name shared to store ACME certs" label: "ACME Volume Name" required: true default: "traefik_acme_vol" type: "string" - variable: "acme_vol_driver" description: "The volume driver shared to store ACME certs" label: "ACME Volume Driver" required: true default: "local" type: enum options: # List of options if using type of `enum` - local - rancher-nfs - rancher-efs - rancher-ebs - variable: "ssl_key" description: "SSL key to secure the service. *Required if you enable https" label: "Https key" type: "multiline" required: false default: "" - variable: "ssl_crt" description: "SSL cert to secure the service. *Required if you enable https" label: "Https crt" type: "multiline" required: false default: "" - variable: "insecure_skip" description: "Enable InsecureSkipVerify param." label: "InsecureSkipVerify:" required: true default: false type: "boolean" - variable: "compress_enable" label: "Enable compression:" description: | Enable Traefik compression for entrypoints. default: true required: true type: "boolean" - variable: "refresh_interval" description: "Interval to poll/apply configuration changes." label: "Refresh Interval (s):" required: true default: 10 type: "int" - variable: "admin_readonly" label: "Admin readonly:" description: | Set admin to readonly mode. default: false required: true type: "boolean" - variable: "admin_statistics" description: "Enable more detailed statistics." label: "Admin statistics history:" required: true default: 10 type: "int" - variable: "admin_auth_method" description: "Admin auth method on the webui." label: "Admin auth method:" required: true default: "basic" type: enum options: # List of options if using type of `enum` - basic - digest - variable: "admin_users" description: "Admin auth user list on the webui. Generate with htpassword for basic or htdigest with traefik realm for digest." label: "Admin users:" type: "multiline" required: false default: "" - variable: "prometheus_enable" description: "To enable statistics to be pulled by Prometheus." label: "Prometheus enable" default: false required: true type: "boolean" - variable: "prometheus_buckets" description: "To define your own buckets" label: "Prometheus buckets" default: "[0.1,0.3,1.2,5.0]" required: true type: "string" - variable: "cattle_url" description: "API cattle url" label: "Cattle URL" default: "" required: false type: "string" - variable: "cattle_access_key" description: "API environment access key" label: "Cattle access key" default: "" required: false type: "string" - variable: "cattle_secret_key" description: "API environment secret key" label: "Cattle secret key" default: "" required: false type: "string" services: traefik: retain_ip: true health_check: healthy_threshold: 2 response_timeout: 5000 port: 8000 unhealthy_threshold: 3 interval: 5000 strategy: recreate metadata: traefik: ssl_key: | ${ssl_key} ssl_crt: | ${ssl_crt}