Fix: traefik extra containers when many separate instances

This commit is contained in:
mrjk 2022-08-20 03:28:48 -04:00
parent b18329e61a
commit d0e0452e2c
2 changed files with 13 additions and 12 deletions

View File

@ -46,6 +46,7 @@ local global_vars_default(user_data) =
traefik_net_external: true,
traefik_svc_ident: stack ,
traefik_svc_port: user_data.app_port ,
traefik_svc_group: ns + sep + 'traefik',
traefik_svc_name: null,
traefik_svc_domain: null,
@ -97,9 +98,10 @@ local global_vars_override(conf) =
# -------------------------------------
# Base routing
local LabelsTraefik(svc, domain, entrypoints, port) =
local LabelsTraefik(svc, domain, entrypoints, port, group) =
{
["traefik.enable"]: "true",
["traefik.group"]: group,
["traefik.http.routers." + svc + ".rule"]: 'Host(`' + domain + '`)',
["traefik.http.routers." + svc + ".entrypoints"]: entrypoints,
["traefik.http.routers." + svc + ".service"]: svc,
@ -173,7 +175,8 @@ local docker_transform(conf_raw, docker_data) =
conf.traefik_svc_name,
conf._traefik_svc_domain,
conf.traefik_svc_entrypoints,
conf.traefik_svc_port)
conf.traefik_svc_port,
conf.traefik_svc_group)
+ LabelsTraefikAuthelia(
conf.traefik_svc_name,
conf.traefik_svc_auth)

View File

@ -1,16 +1,6 @@
---
version: "3.7"
x-paasify-tests:
v1: $VAR1
v1: ${VAR2}
v1: ${VAR3:-VAL3}
v2: ${VAR4:-${VAR5:-VAL5 with space}:${VAR6:-VAL6}}
v1: ${VAR6:-${VAR7}}
v1: ${VAR8:-${VAR9:-VAL9}}
services:
traefik:
image: ${app_image}
@ -41,6 +31,11 @@ services:
- TRAEFIK_PROVIDERS_DOCKER_SWARMMODE=false
- TRAEFIK_PROVIDERS_FILE_DIRECTORY=/etc/traefik
# This will restrict traefik to conatiners having label `proxy.group`
- TRAEFIK_PROVIDERS_DOCKER_CONSTRAINTS=Label(`traefik.group`,`$app_network_name`)
#- TRAEFIK_PROVIDERS_DOCKER_DEFAULTRULE=Host(`{{ .Name }}.{{ index .Labels \"proxy.name\"}}`)
# File provider
#- TRAEFIK_PROVIDERS.FILE.DIRECTORY=/etc/traefik/configs
@ -48,6 +43,9 @@ services:
# Entrypoints
- TRAEFIK_ENTRYPOINTS_front-http_ADDRESS=:80 # <== Defining an entrypoint for port :80 named front
labels:
- traefik.group=$app_network_name
volumes:
- $app_dir_conf:/etc/traefik
- $app_dir_data:/data