【发布时间】: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