CoolFace
Apppublic

fran1215/fastapi-test

sourceHugging Faceupdated 3y agoView on Hugging Face
0likes
README.md91 linesDownload Raw Back to root
1---2title: Fastapi Test3sdk: docker4colorFrom: purple5---6 7# Uso8 9## Despliegue de la aplicación10 11La aplicación ha sido diseñada para ser desplegada en fly.io. Para ello, será12necesario tener instalada el CLI `flyctl`13 14```sh15# Cargar las variables de entorno16cat .env | flyctl secrets import17# Desplegar la aplicación18flyctl deploy19```20 21## Ejecución de desarrollo22 23### Requisitos24 25- Python 3.11 o superior26- Pip327 28### Instrucciones29 30```sh31# Crear un entorno virtual32python -m venv .venv33# Desactivar restricciones para ejecutar script desde powershell como admin34Set-ExecutionPolicy RemoteSigned35 36# Activar entorno virtual37.venv/bin/activate38 39# Activar la restricción de nuevo por seguridad40Set-ExecutionPolicy Restricted41 42# Actualizar pip43py -m pip install --upgrade pip44 45# Instalar los paquetes necesarios46pip install -r requirements.txt47 48# Configuración necesaria para arrancar el servicio49export mongo_url=<VALOR>50export mongo_collection=<VALOR>51# Ver la sección Configuración ...52# Iniciar el servidor53uvicorn --reload --port 8000 --host 127.0.0.1 app:app54```55 56## Ejecución mediante docker57 58```sh59# Compilar el contenedor60docker build -t fastapi-app .61# Inicializar el contenedor. Añadir todas las variables de entorno necesarias62docker run -p 8000:8080 \63    -e mongo_url=<VALOR> \64    -e mongo_collection=<VALOR> \65    -e mongo_database=<VALOR> \66    fastapi-app67```68 69# Configuración70 71La aplicación admite las siguientes opciones de configuración mediante ficheros72`.env` o variables de entorno73 74| Variable             | Descripción                             | Valor por defecto |75| -------------------- | --------------------------------------- | ----------------- |76| `mongo_url`          | URL de un servidor Mongodb              |                   |77| `mongo_collection`   | Colección donde almacenar los datos     |                   |78| `mongo_database`     | Base de datos donde buscar la colección |                   |79| `locationiq_apikey`  | LocationIQ api key                      |                   |80| `locationiq_baseurl` | LocationIQ API URL                      |                   |81| `paypal_clientid`    | Paypal client id                        |                   |82| `paypal_secret`      | Paypal client secret                    |                   |83| `paypal_url`         | Paypal API URL                          |                   |84| `auth_audience`      | JWT audience                            |                   |85| `auth_baseurl`       | Base url where to find public JWK       |                   |86 87# Documentación88 89Se proporciona un fichero `openapi.json` con la especificación de OpenApi.90Además, el propio servidor web proporciona la documentación sobre los endpoints91REST bajo las rutas `/docs` (SwaggerUI) y `/redoc` (Redoc)