【问题标题】:Katacode Traefik tutorial error - container not createdKatacode Traefik 教程错误 - 未创建容器
【发布时间】:2021-05-16 18:43:34
【问题描述】:

我正在为 使用 Traefik 的负载平衡容器尝试 Katacoda 游乐场 - https://www.katacoda.com/courses/traefik/deploy-load-balancer:

这是教程中启动 Traefik 节点和 2 个测试容器的确切 Docker 撰写脚本:

  image: traefik
  command: --web --docker --docker.domain=docker.localhost --logLevel=DEBUG
  ports:
    - "80:80"
    - "8080:8080"
    - "443:443"
  volumes:
    - /var/run/docker.sock:/var/run/docker.sock
    - /dev/null:/traefik.toml

machine:
  image: katacoda/docker-http-server
  labels:
    - "traefik.backend=machine-echo"
    - "traefik.frontend.rule=Host:machine-echo.example.com"

echo:
  image: katacoda/docker-http-server:v2
  labels:
    - "traefik.backend=echo"
    - "traefik.frontend.rule=Host:echo-echo.example.com"

我运行 Docker-Compose 命令,如教程中所述:

$ docker-compose up -d
Creating tutorial_traefik_1 ... done
Creating tutorial_echo_1    ... done
Creating tutorial_machine_1 ... done

但是,当我检查容器列表时,我可以看到只创建了 2 个容器。 Traefik 容器未创建:

$ docker container ls
CONTAINER ID        IMAGE                            COMMAND             CREATED             STATUS              PORTS               NAMES
35e87a3ff6ed        katacoda/docker-http-server      "/app"              11 seconds ago      Up 9 seconds        80/tcp              tutorial_machine_1
a455019d16be        katacoda/docker-http-server:v2   "/app"              11 seconds ago      Up 9 seconds        80/tcp              tutorial_echo_1 

下一步也失败了。这可能是因为 Traefik 容器没有运行:

$ curl -H Host:machine-echo.example.com http://host01
curl: (7) Failed to connect to host01 port 80: Connection refused

谁能复制这个教程,请告诉我这个错误的原因和解决方法?

【问题讨论】:

    标签: docker docker-compose traefik katacoda kata-containers


    【解决方案1】:

    今天就运行这个,你必须将 traefik 版本硬编码为 1.7.32

    traefik:
      image: traefik:1.7.32
      command: --web --docker --docker.domain=docker.localhost --logLevel=DEBUG
      ports:
        - "80:80"
        - "8080:8080"
        - "443:443"
      volumes:
        - /var/run/docker.sock:/var/run/docker.sock
        - /dev/null:/traefik.toml
    
    machine:
      image: katacoda/docker-http-server
      labels:
        - "traefik.backend=machine-echo"
        - "traefik.frontend.rule=Host:machine-echo.example.com"
    
    echo:
      image: katacoda/docker-http-server:v2
      labels:
        - "traefik.backend=echo"
        - "traefik.frontend.rule=Host:echo-echo.example.com"
    

    【讨论】:

      猜你喜欢
      • 2019-01-25
      • 1970-01-01
      • 2021-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-20
      • 1970-01-01
      • 2015-06-13
      相关资源
      最近更新 更多