services: {{ $all_containers := whereLabelValueMatches . "enable_gatekeeper" "true" }} {{ $all_containers = sortObjectsByKeysAsc $all_containers "Name" }} {{ range $container := $all_containers }} {{ $serviceLabel := index $container.Labels "com.docker.compose.service" }} {{ $containerNumber := index $container.Labels "com.docker.compose.container-number" }} {{ $port := "" }} {{ if eq $serviceLabel "web" }} {{ $port = ":8000" }} {{ end }} {{ if eq $serviceLabel "web-staging" }} {{ $port = ":8000" }} {{ end }} {{ if eq $serviceLabel "feedback" }} {{ $port = ":3000" }} {{ end }} {{ if eq $serviceLabel "health" }} {{ $port = ":8080" }} {{ end }} gatekeeper-{{ $serviceLabel }}-{{ $containerNumber }}: image: ghcr.io/techarohq/anubis:latest container_name: pkmntrade-club-gatekeeper-{{ $serviceLabel }}-{{ $containerNumber }} env_file: - .env environment: - TARGET=http://{{ $container.Name }}{{ $port }} networks: default: aliases: - pkmntrade-club-gatekeeper-{{ $serviceLabel }} - gatekeeper-{{ $serviceLabel }} {{ end }} networks: default: name: pkmntrade-club_default external: true