diff --git a/composer.json b/composer.json index 13f94353c56b3f117914c9524e334c642d1a5844..ca0d67e84ec2775f6a1dbd77b0a417ead5b57370 100644 --- a/composer.json +++ b/composer.json @@ -28,7 +28,7 @@ "php": ">=7.2", "composer-plugin-api": "^1||^2", "lakedrops/composer-json-utils": "^2.0||dev-master", - "lakedrops/docker-traefik": "^1.4||dev-master" + "lakedrops/docker-traefik": "^2.0||dev-master" }, "require-dev": { "composer/composer": "^1||^2", diff --git a/templates/docker-compose.yml.twig b/templates/docker-compose.yml.twig index b1b7eb5ef3992a9e90ba23710874779505862251..031f710819e1aeda88d359688767b611c861f26c 100644 --- a/templates/docker-compose.yml.twig +++ b/templates/docker-compose.yml.twig @@ -80,9 +80,10 @@ services: volumes: - {{ projectroot }}:/var/www/html labels: - traefik.backend: '{{ projectname }}_{{ webserver.type }}_1' - traefik.port: '80' - traefik.frontend.rule: 'Host:{{ projectname }}.{{ traefik.domain }}{% for domain in extradomains|default([]) %},{{ domain }}{% endfor %}' + traefik.enable: true + traefik.network: {{ projectname }} + traefik.http.routers.whoami.rule: Host(`{{ projectname }}.{{ traefik.domain }}`) + #{% for domain in extradomains|default([]) %},{{ domain }}{% endfor %}' {% if varnish.enable %} varnish: @@ -94,9 +95,9 @@ services: VARNISH_BACKEND_HOST: {{ webserver.type }} VARNISH_BACKEND_PORT: 80 labels: - traefik.backend: '{{ projectname }}_varnish_1' - traefik.port: '6081' - traefik.frontend.rule: 'Host:varnish.{{ projectname }}.{{ traefik.domain }}' + traefik.enable: true + traefik.network: {{ projectname }} + traefik.http.routers.whoami.rule: Host(`varnish.{{ projectname }}.{{ traefik.domain }}`) {% endif %} redis: @@ -108,9 +109,10 @@ services: environment: ADMINER_SALT: adminer-salt labels: - traefik.backend: '{{ projectname }}_adminer_1' - traefik.port: '9000' - traefik.frontend.rule: 'Host:adminer.{{ projectname }}.{{ traefik.domain }}' + traefik.enable: true + traefik.network: {{ projectname }} + traefik.http.routers.whoami.rule: Host(`adminer.{{ projectname }}.{{ traefik.domain }}`) + #traefik.port: '9000' {% elseif dbbrowser.type == 'pma' %} pma: image: 'phpmyadmin/phpmyadmin:5' @@ -121,9 +123,9 @@ services: PHP_UPLOAD_MAX_FILESIZE: 1G PHP_MAX_INPUT_VARS: 1G labels: - traefik.backend: '{{ projectname }}_pma_1' - traefik.port: '80' - traefik.frontend.rule: 'Host:pma.{{ projectname }}.{{ traefik.domain }}' + traefik.enable: true + traefik.network: {{ projectname }} + traefik.http.routers.whoami.rule: Host(`pma.{{ projectname }}.{{ traefik.domain }}`) {% endif %} {% if solr.enable %} @@ -132,17 +134,19 @@ services: environment: SOLR_HEAP: 1024m labels: - traefik.backend: '{{ projectname }}_solr_1' - traefik.port: '8983' - traefik.frontend.rule: 'Host:solr.{{ projectname }}.{{ traefik.domain }}' + traefik.enable: true + traefik.network: {{ projectname }} + traefik.http.routers.whoami.rule: Host(`solr.{{ projectname }}.{{ traefik.domain }}`) + #traefik.port: '8983' {% endif %} mailhog: image: 'mailhog/mailhog' labels: - traefik.backend: '{{ projectname }}_mailhog_1' - traefik.port: '8025' - traefik.frontend.rule: 'Host:mailhog.{{ projectname }}.{{ traefik.domain }}' + traefik.enable: true + traefik.network: {{ projectname }} + traefik.http.routers.whoami.rule: Host(`mailhog.{{ projectname }}.{{ traefik.domain }}`) + #traefik.port: '8025' {% if node.enable %} nodejs: @@ -150,9 +154,10 @@ services: environment: NODE_SERVICE_KEY: '{{ node.key }}' labels: - traefik.backend: 'nodejs' - traefik.port: '8080' - traefik.frontend.rule: 'Host:nodejs.{{ projectname }}.{{ traefik.domain }}' + traefik.enable: true + traefik.network: {{ projectname }} + traefik.http.routers.whoami.rule: Host(`nodejs.{{ projectname }}.{{ traefik.domain }}`) + #traefik.port: '8080' volumes: - {{ projectroot }}/{{ node.path }}:/app command: sh -c 'npm install && npm run start' @@ -161,9 +166,10 @@ services: image: 'node:alpine' working_dir: /app labels: - traefik.backend: '{{ projectname }}_node_1' - traefik.port: '3000' - traefik.frontend.rule: 'Host:front.{{ projectname }}.{{ traefik.domain }}' + traefik.enable: true + traefik.network: {{ projectname }} + traefik.http.routers.whoami.rule: Host(`front.{{ projectname }}.{{ traefik.domain }}`) + #traefik.port: '3000' expose: - '3000' volumes: @@ -208,9 +214,10 @@ services: environment: WEBGRIND_PROFILER_DIR: '/mnt/files/xdebug/profiler' labels: - traefik.backend: '{{ projectname }}_webgrind_1' - traefik.port: '8080' - traefik.frontend.rule: 'Host:webgrind.{{ projectname }}.{{ traefik.domain }}' + traefik.enable: true + traefik.network: {{ projectname }} + traefik.http.routers.whoami.rule: Host(`webgrind.{{ projectname }}.{{ traefik.domain }}`) + #traefik.port: '8080' volumes: - {{ projectroot }}/files:/mnt/files {% endif %}