我是traefik的新手,想在我的服务器上安装它 . 我有一个在swarm模式下运行的docker服务器,并且在服务器上运行了一些容器 . 只是容器不是服务 .
我的第一次尝试是获得traefik docker图像并启动它 . 因此,使用let start页面上显示的docker文件,我可以在Web GUI中看到我的所有容器 .
当我尝试使用traefik.toml配置而不是docker-compose.yml文件中的命令行参数时出现问题 .
以下撰写文件将起作用并显示我的容器 . 但是,如果我使用当前注释掉的行,我将看不到容器 .
version: '3'
services:
proxy:
image: traefik
command: --api --docker --docker.domain="portal" --docker.exposedbydefault=false --logLevel=DEBUG
# command: --api --logLevel=DEBUG
networks:
- webgateway
ports:
- "70:80"
- "7070:8080"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/grafra1969/traefik/traefik.toml:/etc/traefik/traefik.toml
networks:
webgateway:
driver: bridge
根据日志,读取配置文件,根据我的理解应该类似于默认值 . 怎么了
这里是泊坞部分的设置
[docker]
endpoint = "unix:///var/run/docker.sock"
domain = "portal.net"
ExposedByDefault = true
Watch = true
1 回答
我的配置有三个主要问题 .
文件/home/grafra1969/traefik/traefik.toml不存在 . 我忘了一个文件夹 . 因此使用了默认配置 .
以这种方式使用命令行将使用默认值覆盖docker provider的设置 .
启用docke.SwarmMode时,必须确保在服务上设置标签,而不是在容器上设置标签 .
解决了这一切后,我开始运行了 .