我在单独的容器中运行API和traefik。该设置(大多数情况下)有效。但是,traefik似乎不尊重配置文件中的 logLevel 设置:它仅记录错误。
traefik.toml
配置文件的相关部分是:
defaultEntryPoints = ["https"]
[docker]
endpoint = "unix:///var/run/docker.sock"
swarmMode = true
logLevel = "DEBUG" # no matter what I put here, it only logs errors
[traefikLog]
filePath = "/logs/traefik.log"
...
我通过docker stack deploy
通过docker-compose.yml
文件启动api,如下所示:
version: '3.5'
services:
api:
...
traefik:
image: traefik
ports:
...
- "8080:8080"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
# So that Traefik can listen to the Docker events
- $CODEDIR/api/traefik.toml:/etc/traefik/traefik.toml
- $LOGSDIR:/logs
deploy:
labels:
- traefik.enable=true
- trafik.backend=traefik
...
我可以看到traefik.log文件是在正确的位置创建的。但是,除非有错误,否则它将保持为空。
似乎我缺少一些简单而明显的东西,但到目前为止,我还没发现它...
想法?
请注意:traefik.toml
中还有其他选项似乎被忽略了。