gpt4 book ai didi

docker - Traefik 在 Docker Swarm 中运行的基本配置

转载 作者:行者123 更新时间:2023-12-02 19:57:52 25 4
gpt4 key购买 nike

据我所见,它类似于 this :docker-traefik.yml :

version: '3'

services:
traefik:
image: traefik
command: --docker # enable Docker Provider
# use Docker Swarm Mode as data provider
--docker.swarmmode
ports:
- "80:80"
volumes:
# for it to be able to listen to Docker events
- /var/run/docker.sock:/var/run/docker.sock
docker-whoami.yml :
version: '3'

networks:
traefik_default:
external: true

services:
whoami:
image: containous/whoami
networks:
# add to traefik network
- traefik_default
deploy:
labels:
# whoami is on port 80
- "traefik.port=80"
# whoami is on traefik_default network
- "traefik.docker.network=traefik_default"
# when to forward requests to whoami
- "traefik.frontend.rule=Host:example.com"
让我引用 documentation这里:

Required labels:

  • traefik.frontend.rule
  • traefik.port - Without this the debug logs will show this service is deliberately filtered out.
  • traefik.docker.network - Without this a 504 may occur.

...

traefik.docker.network Overrides the default docker network to use for connections to the container. [1]

traefik.port=80 Registers this port. Useful when the container exposes multiples ports.


但是为什么不能将暴露的端口设置为默认值 traefik.port ?从我所见,它可以在没有 traefik.docker.network 的情况下工作(也就是说,如果 traefik_default 是第一个服务的网络)。我什么时候可以得到 504?

最佳答案

But why can't it just take the exposed ports for a default value of traefik.port?



如果你的容器有 3 或 4 个暴露端口,traefik 应该使用哪个?那么谁对 traefik 说,这些端口中哪一个是正确的呢?所以你做 - 使用 traefik.port .使用您配置的服务的默认端口的问题在哪里?

你应该公开 80、443 和 8080 - 所以 http/https 网页的 80 和 443 以及 traefik 仪表板的 8080。如果你不想使用仪表板,你不需要暴露 8080。

而且我在您的 Composer 文件中没有看到任何网络配置@traefik - 这应该没有网络吗?你的服务和traefik需要在同一个网络中。否则 traefik 无法到达您的服务并转发。

端点在哪里?

关于docker - Traefik 在 Docker Swarm 中运行的基本配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56713895/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com