Code Monkey home page Code Monkey logo

Comments (5)

tiangolo avatar tiangolo commented on May 13, 2024

When you are developing locally, the only one that listens on port 80 is the service (container) named proxy. It's a Traefik: https://github.com/tiangolo/full-stack-fastapi-postgresql/blob/master/%7B%7Bcookiecutter.project_slug%7D%7D/docker-compose.dev.ports.yml#L6

Then this proxy is in charge of passing the requests to the backend or frontend depending on the path, taken by these Traefik labels:

https://github.com/tiangolo/full-stack-fastapi-postgresql/blob/master/%7B%7Bcookiecutter.project_slug%7D%7D/docker-compose.dev.labels.yml#L10

https://github.com/tiangolo/full-stack-fastapi-postgresql/blob/master/%7B%7Bcookiecutter.project_slug%7D%7D/docker-compose.dev.labels.yml#L16


When in production, it uses the docker-compose.deploy.*.yml files, they have the equivalent Traefik labels too, in the correct place.

from full-stack-fastapi-template.

Innoviox avatar Innoviox commented on May 13, 2024

I am trying to get the proxy to run on port 3000. I have changed all of the files you suggested to have 3000:

  proxy:
    ports:
      # - '80:80'
      - '3000:3000'
      - '8090:8080'
services:
  proxy:
    labels:
      - traefik.frontend.rule=Host:${DOMAIN}
      - traefik.enable=true
      - traefik.port=3000
  backend:
    labels:
      - traefik.frontend.rule=PathPrefix:/api,/docs,/redoc
      - traefik.enable=true
      - traefik.port=3000
      - traefik.tags=${TRAEFIK_TAG}
  frontend:
    labels:
      - traefik.frontend.rule=PathPrefix:/
      - traefik.enable=true
      - traefik.port=3000
      - traefik.tags=${TRAEFIK_TAG}

in both docker-compose.deploy.labels.yml and docker-compose.dev.labels.yml. However, when I load localhost:3000 in the browser I get "Failed to open page: The server unexpectedly dropped the connection." However, when I navigate to just localhost:80, it works fine. Also, docker-compose logs proxy has the line:

proxy_1          | time="2019-07-31T14:12:41Z" level=info msg="Server configuration reloaded on :80"

And docker-compose logs backend has the line:

backend_1        | INFO: Uvicorn running on http://0.0.0.0:80 (Press CTRL+C to quit)

So it seems that it is still attaching to port 80. Can you recommend any solutions for this?

from full-stack-fastapi-template.

Innoviox avatar Innoviox commented on May 13, 2024

I have found a solution. docker-compose.dev.ports.yml should have 3000:80 instead of 3000:3000.

from full-stack-fastapi-template.

tiangolo avatar tiangolo commented on May 13, 2024

Thanks for reporting @Innoviox !

@kongdetai did you solve your problem? May we close this issue?

from full-stack-fastapi-template.

github-actions avatar github-actions commented on May 13, 2024

Assuming the original issue was solved, it will be automatically closed now. But feel free to add more comments or create new issues.

from full-stack-fastapi-template.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.