程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Traefik-通过fastapi webserver按路径路由大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决Traefik-通过fastapi webserver按路径路由?

开发过程中遇到Traefik-通过fastapi webserver按路径路由的问题如何解决?下面主要结合日常开发的经验,给出你关于Traefik-通过fastapi webserver按路径路由的解决方法建议,希望对你解决Traefik-通过fastapi webserver按路径路由有所启发或帮助;

运行 traefik 作为负载均衡器和反向代理, 在 localhost:8111 上运行的 fastAPI 网络服务器 我想知道是否可以路由不同的路径, 意思:

www.path1.mydomain.com --> 本地主机:8111/path1

www.path2.mydomain.com --> 本地主机:8111/some/other/path2

当前配置允许基本路由: www.webserver.mydomain.com --> 本地主机:8111

网络服务器:

version: '3.7'
      
networks: 
  dockers_default: 
    external: true
    
services:
  webserver:
    build: .
    container_name: webserver
    command: uvicorn main:app --host 0.0.0.0 --port "${WEBSERVER_PORT:-8111}" --reload
    volumes:
      - ./BACkend/webserver:/webserver
    networks:
      - dockers_default
    ports:
       - "${WEBSERVER_PORT:-8111}:8111"
    depends_on:
        - mongo_db
    labels:
      traefik.enable: true
      traefik.http.routers.webserver.rule: Host(`webserver.${DOMAINnamE}`)
      traefik.http.routers.webserver.entrypoints: websecure
      traefik.http.services.webserver.loadbalancer.server.port: "${WEBSERVER_PORT:-8111}"
   

特拉菲克:

version: '3.7'

services:


  traefik:
    image: traefik:v2.4.7
    container_name: traefik
    restart: always
    command:
      - --log.level=DEBUG
      - --log.filePath=etc/traefik/log/traefik.log
      - --accessLog.filePath=etc/traefik/log/access.log
      - --accessLog.bufferingSize=100
#    
      - --provIDers.docker=true
      - --provIDers.docker.exposedbydefault=false
      - --API
      #allow access on 8888 
      - --API.insecure=true
      
      - --entrypoints.traefik.address=:8888

      - --entrypoints.web.address=:80
      - --entrypoints.web.http.redirections.entrypoint.to=websecure
      - --entrypoints.web.http.redirections.entrypoint.scheR_466_11845@e=https

      - --entrypoints.websecure.address=:443
      - --entrypoints.websecure.http.tls.certresolver=myresolver

      - --certificatesresolvers.myresolver.acme.dnschALLENge=true
      - --certificatesresolvers.myresolver.acme.email=${CF_API_EMAIL}
      - --certificatesresolvers.myresolver.acme.storage=acme.Json   
      - --certificatesresolvers.myresolver.acme.dnschALLENge.provIDer=cloudFlare
            # specify dynamic configuration file:
      - --provIDers.file.filename=/dynamic.yaml
      - --provIDers.file.watch=true

   # network_mode: host
    ports:
      - 80:80
      - 443:443
      - 8888:8888
    environment:
      - CF_API_EMAIL=${CF_API_EMAIL}
      - CF_API_KEY=${CF_API_KEY}
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /var/run/docker.sock:/var/run/docker.sock
      - ./traefik/acme.Json:/acme.Json    
      - ./traefik/:/etc/traefik/log/
      #for accessing non docker application (qnap)
      - ./traefik/dynamic.yaml:/dynamic.yaml
    labels:
      traefik.enable: true

      # Dashboard
      traefik.http.routers.traefik.rule: Host(`traefik.${DOMAINnamE}`)
      traefik.http.routers.traefik.entrypoints: websecure
      traefik.http.routers.traefik.service: API@internal
      traefik.http.routers.traefik.mIDdlewares: auth
      traefik.http.mIDdlewares.auth.basicauth.users: ${TRAEFIK_USER}:${TRAEFIK_PASS}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

大佬总结

以上是大佬教程为你收集整理的Traefik-通过fastapi webserver按路径路由全部内容,希望文章能够帮你解决Traefik-通过fastapi webserver按路径路由所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: