Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

228
Views
FastAPI escucha el puerto de salida

Tengo una ventana acoplable FastAPI ejecutándose en mi servidor debian 9 con --net=host ejecutándose en el puerto 8000 . Me gustaría abrir el servicio FastAPI al público, pero realmente no sé cómo. Puedo hacer curl localost:8000/test y veré el retorno, pero cuando hago curl domain:8000/test responderá connection refused .

Abrí el puerto sudo iptables -A INPUT -p tcp --dport 8000 -j ACCEPT pero aún no veo nada. ¿Tengo que configurar uvicorn de alguna manera para resolver el dominio internamente, de forma similar a lo que hace apache con los hosts virtuales?

 netstat -tulpn (Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.) Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.0.1:8000 0.0.0.0:* LISTEN - tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN -
 sudo ss -tulpn Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port tcp LISTEN 0 128 127.0.0.1:8000 *:* users:(("gunicorn",pid=44998,fd=5),("gunicorn",pid=44983,fd=5))

¿O debería esto devolver 0.0.0.0:8000 porque puedo ingresar al host sin problemas?

Dockerfile

 FROM tiangolo/uvicorn-gunicorn-fastapi:python3.9-alpine3.14 COPY ./app /app USER root COPY ./requirements.txt /requirements.txt RUN apk add py3-pip && \ pip install --upgrade pip RUN apk add --no-cache mariadb-connector-c-dev ;\ apk add --no-cache --virtual .build-deps \ build-base \ mariadb-dev ;\ pip install -r /requirements.txt;\ apk del .build-deps ENV HOSTNAME fastapi ENV PYTHONPATH '/:/app' COPY ./gunicorn_conf.py /gunicorn_conf.py
over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

dado que puede acceder a FastAPI desde su máquina host, eso significa que la asignación de puertos acoplables funciona bien. lo que queda es agregar el nombre de host a los orígenes en el módulo Router.py algo como esto \

 origins = [ "http://127.0.0.1:8000", "http://localhost:8000", "http://yourhostgoeshere:yourport", ] app.add_middleware( CORSMiddleware, allow_origins=origins, allow_credentials=True, allow_methods=["*"], allow_headers=["*"], )

recuerda cambiar HTTP a HTTPS si no tienes un proxy.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!