为什么phpmyadmin和traefik v2会出现404错误代码?

z9zf31ra  于 12个月前  发布在  PHP
关注(0)|答案(1)|浏览(209)

我正在尝试使用Docker Swarm Culster,Traefik和Portainer设置环境。
至少Traefik和Portainer是好的,问题是我的PMA和Maria DB堆栈。
我的pma-db.yml:

version: '3.1'

services:
  db:
    image: mariadb:10.6
    environment:
      MYSQL_ROOT_PASSWORD: ********
    networks:
      - backend
    volumes:
      - db-data:/db
    deploy:
      placement:
        constraints:
          - node.labels.db.db-data == true

  phpmyadmin:
    image: phpmyadmin
    environment:
      - PMA_ARBITRARY=1
      - PMA_ABSOLUTE_URI=https://pma.example.com
    networks:
      - backend
      - traefik-public
    ports:
      - 8081:80
    labels:
        - traefik.enable=true
        - traefik.docker.network=traefik-public
        - traefik.constraint-label=traefik-public
        - traefik.http.routers.pma_phpmyadmin-http.rule=Host(`${DOMAIN?Variable not set}`)
        - traefik.http.routers.pma_phpmyadmin-http.entrypoints=http
        - traefik.http.routers.pma_phpmyadmin-http.middlewares=https-redirect
        - traefik.http.routers.pma_phpmyadmin-https.rule=Host(`${DOMAIN?Variable not set}`)
        - traefik.http.routers.pma_phpmyadmin-https.entrypoints=https
        - traefik.http.routers.pma_phpmyadmin-https.tls=true
        - traefik.http.routers.pma_phpmyadmin-https.tls.certresolver=le
        - traefik.http.services.pma_phpmyadmin.loadbalancer.server.port=8081

networks:
  traefik-public:
    external: true
  backend:
    external: false

volumes:
  db-data:

字符串
当我设置堆栈时,我不能访问pma,有一个错误404找不到。我尝试了很多东西,但仍然不工作。
请问你能帮助我理解为什么这是行不通的?
非常感谢
(我的英语也不好)
我尝试了-traefik.port=80而不是traefik.http.services.pma_phpmyadmin.loadbalancer.server.port=8081,但我使用的是Docker swarm,-trafik.port在swarm环境中不起作用?
我试图删除端口部分,仍然不工作

yvt65v4c

yvt65v4c1#

我已经尝试添加traefik.http.routers.pma_phpmyadmin-https.service=pma_phpmyadmin和它仍然不工作。
我再次尝试了你下面的例子,-> example.com/phpmyadmin和使用路径前缀,但仍然不工作。
为了检查我的http.路由器是否正常工作,我试着用traefik Jmeter 板查看它,traefik看不到我的服务,我还试着部署了一个我在docker swarm rocks docs上找到的堆栈,grafana / prometheus和swarm ready面板,它很好,证书生成了,所有工作都正常。
我不明白为什么它不能只与phpmyadmin工作,我需要做我的工作.

相关问题