github.com/drud/ddev@v1.21.5-alpha1.0.20230226034409-94fcc4b94453/pkg/ddevapp/router_compose_template.yaml (about)

     1  services:
     2    ddev-router:
     3      image: {{ .router_image }}-built
     4      build:
     5        context: router-build
     6        args:
     7          BASE_IMAGE: {{ .router_image }}
     8          username: '{{ .Username }}'
     9          uid: '{{ .UID }}'
    10          gid: '{{ .GID }}'
    11  
    12      {{ if .use_traefik }}
    13      command:
    14        - --configFile=/mnt/ddev-global-cache/traefik/static_config.yaml
    15      user: {{ .UID }}:{{ .GID }}
    16      {{ end }}
    17  
    18      networks:
    19          - ddev_default
    20      container_name: ddev-router
    21      ports:{{ $dockerIP := .dockerIP }}{{ if not .router_bind_all_interfaces }}{{ range $port := .ports }}
    22      - "{{ $dockerIP }}:{{ $port }}:{{ $port }}"{{ end }}{{ else }}{{ range $port := .ports }}
    23      - "{{ $port }}:{{ $port }}"{{ end }}{{ end }}
    24      {{ if .use_traefik }}
    25      # Traefik router; configured in static config as entrypoint
    26      # TODO: Make this configurable? Put it somewhere else?
    27      - 9999:9999
    28      {{ end }}
    29      volumes:
    30        {{ if not .use_traefik }}
    31        - /var/run/docker.sock:/tmp/docker.sock:ro
    32        {{ end }}
    33        - ddev-global-cache:/mnt/ddev-global-cache:rw
    34        {{ if .letsencrypt }}
    35        - ddev-router-letsencrypt:/etc/letsencrypt:rw
    36        {{ end }} {{/* end if .letsencrypt */}}
    37      environment:
    38        - DISABLE_HTTP2={{ .disable_http2 }}
    39          {{ if .letsencrypt }}
    40        - LETSENCRYPT_EMAIL={{ .letsencrypt_email }}
    41        - USE_LETSENCRYPT={{ .letsencrypt }}
    42          {{ end }}{{/* end if .letsencrypt */}}
    43      restart: "{{ if .AutoRestartContainers }}always{{ else }}no{{ end }}"
    44      healthcheck:
    45        interval: 1s
    46        retries: 120
    47        start_period: 120s
    48        timeout: 120s
    49  
    50  networks:
    51    ddev_default:
    52      name: ddev_default
    53      external: true
    54  volumes:
    55    ddev-global-cache:
    56      name: ddev-global-cache
    57      external: true
    58    {{ if .letsencrypt }}
    59    ddev-router-letsencrypt:
    60      name: ddev-router-letsencrypt
    61    {{ end }}