Docker中的动态更改Traefik前端配置

时间:2018-07-10 10:03:05

标签: docker docker-compose traefik api-gateway

我使用docker-compose在Docker中运行Traefik

version: '3'

services:
  traefik:
    image: traefik
    command: --api --docker --docker.watch
    ports:
      - "80:80"
      - "8080:8080"
    volumes:
        - /var/run/docker.sock:/var/run/docker.sock
        - ./traefik.toml:/etc/traefik/traefik.toml

  frontend:
    image: platform/frontend
    labels:
      - "traefik.frontend.rule=Host:frontend.docker.localhost"

文档说有两种类型的配置:

  • 静态Træfik配置,仅在开始时加载。
  • 可以动态重新加载(无需重新启动进程)的动态Træfik配置。

动态配置包括前端。

如何在不重新启动docker服务的情况下更改traefik.frontend.rule

假设我需要将其更改为:traefik.frontend.rule=Host:home.docker.localhost

1 个答案:

答案 0 :(得分:1)

我认为是 docker swarm 能力。您可以使用docker service update swarm 中更新服务,但是如果没有群集,就无法做到。 使用docker服务更新,您可以使用滚动更新群功能来更改标签,图像。