Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker 仅http端口上的Traefik仪表板_Docker_Docker Compose_Reverse Proxy_Traefik - Fatal编程技术网

Docker 仅http端口上的Traefik仪表板

Docker 仅http端口上的Traefik仪表板,docker,docker-compose,reverse-proxy,traefik,Docker,Docker Compose,Reverse Proxy,Traefik,我试图在我的主机IP上公开我的docker服务(如Heimdall、Plex、Tautuli等),仅用于内部目的,因此没有域名。我希望每个服务都可以通过自己的前缀访问,比如192.168.0.100/heimdall、192.168.0.100/Tautuli等 我希望将仪表板放在一个单独的端口上,比如8080,但即使我将8080的入口点指定为traefik,并将traefik设置为服务的入口点,它仍然会转到名为http的端口80 我的配置有问题吗?还是traefik方面有问题 docker-c

我试图在我的主机IP上公开我的docker服务(如Heimdall、Plex、Tautuli等),仅用于内部目的,因此没有域名。我希望每个服务都可以通过自己的前缀访问,比如192.168.0.100/heimdall、192.168.0.100/Tautuli等

我希望将仪表板放在一个单独的端口上,比如8080,但即使我将8080的入口点指定为traefik,并将traefik设置为服务的入口点,它仍然会转到名为http的端口80

我的配置有问题吗?还是traefik方面有问题

docker-compose.yml

version: '3'
services:
  traefik:
    image: traefik
    container_name: traefik
    ports:
      - "80:80"
      - "8080:8080"
    restart: always
    volumes:
      - ./traefik:/etc/traefik
      - "/var/run/docker.sock:/var/run/docker.sock:ro"
特拉菲克

entryPoints:
  http:
    address: ":80"
  traefik:
    address: ":8080"
api: {}
log:
  level: "DEBUG"
providers:
  file:
    directory: /etc/traefik/dynamic
  docker:
    endpoint: unix:///var/run/docker.sock
    exposedByDefault: false
dashboard.yml

http:
  routers:
    api:
      rule: PathPrefix(`/api`) || PathPrefix(`/dashboard`)
      entrypoints:
        - traefik
      service: api@internal

根据文档(),这可能有助于:

api:
  insecure: true
它应该隐式地使用端口8080的特殊入口点
traefik
。 有关仪表板的更多信息,您也可以查看此项:

编辑
我刚刚试用过,它在8080端口上工作,配置如下:

docker-compose.yml

version: '3'
services:
  traefik:
    image: traefik
    container_name: traefik
    ports:
      - "80:80"
      - "8080:8080"
    restart: always
    volumes:
      - ./traefik:/etc/traefik
      - "/var/run/docker.sock:/var/run/docker.sock:ro"
traefik.yml(我在没有文件提供程序的情况下使用了您的):


根据文档(),这可能有助于:

api:
  insecure: true
它应该隐式地使用端口8080的特殊入口点
traefik
。 有关仪表板的更多信息,您也可以查看此项:

编辑
我刚刚试用过,它在8080端口上工作,配置如下:

docker-compose.yml

version: '3'
services:
  traefik:
    image: traefik
    container_name: traefik
    ports:
      - "80:80"
      - "8080:8080"
    restart: always
    volumes:
      - ./traefik:/etc/traefik
      - "/var/run/docker.sock:/var/run/docker.sock:ro"
traefik.yml(我在没有文件提供程序的情况下使用了您的):


即使使用unsecure:true和名为traefik的端口9000,仪表板也只能从端口80使用,甚至日志也显示API和仪表板应该在entrypoint traefik“添加的传出跟踪中间件”下运行api@internal“entryPointName=traefik routerName=api@internalmiddlewareName=跟踪middlewareType=跟踪转发“我刚刚试过,效果不错。我已经用
unsecure:true
尝试过了,如果没有这两种方法,它将同时使用这两种方法,仅用
unsecure:true
它将创建3个路由器,而不是1个路由器和一些中间软件。虽然我的配置有点不同,但问题可能出在文件提供程序上。我将很快更新我的答案。即使使用unsecure:true和名为traefik的端口9000,仪表板也只能从端口80使用,甚至日志显示API和仪表板应该在entrypoint traefik“添加的传出跟踪中间件”下运行api@internal"entryPointName=traefik routerName=api@internalmiddlewareName=跟踪middlewareType=跟踪转发“我刚刚试过,效果不错。我已经用
unsecure:true
尝试过了,如果没有这两种方法,它将同时使用这两种方法,仅用
unsecure:true
它将创建3个路由器,而不是1个路由器和一些中间软件。虽然我的配置有点不同,但问题可能出在文件提供程序上。我将很快更新我的答案。