https://github.com/tomaslopera/fall_marathons_api
https://github.com/tomaslopera/fall_marathons_api
docker fastapi mysql ngrok
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/tomaslopera/fall_marathons_api
- Owner: Tomaslopera
- Created: 2024-09-23T12:01:42.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2025-03-15T00:44:06.000Z (over 1 year ago)
- Last Synced: 2025-08-24T13:50:49.052Z (10 months ago)
- Topics: docker, fastapi, mysql, ngrok
- Language: Python
- Homepage:
- Size: 34.2 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Fall Marathons API (2010-2019)
## Autores
- Pedro Sierra
- Tomás Lopera
Este proyecto consiste en una API desarrollada con FastAPI para gestionar y consultar datos de maratones entre los años 2010 y 2019. Los datos incluyen información sobre el nombre del participante, su tiempo de finalización, categoría de edad, entre otros. La API está desplegada dentro de un contenedor Docker y es accesible públicamente utilizando ngrok para generar una URL temporal.
## Características
- **Consultar maratones**: Obtener resultados de maratones filtrados por carrera y paginación.
- **Agregar resultados**: Añadir nuevos resultados de maratones a la base de datos.
- **Desplegable en Docker**: Corre fácilmente dentro de un contenedor Docker.
- **Acceso público con ngrok**: La API puede ser accesible desde cualquier lugar usando ngrok.
## Requisitos
- Docker
- Python 3.12 o superior
- FastAPI
- SQLAlchemy
- MySQL o cualquier base de datos compatible con SQLAlchemy
- Ngrok (para exponer la API públicamente)
## Instalación
1. **Clona el repositorio:**
```bash
git clone [https://github.com/tuusuario/fall-marathons-api.git](https://github.com/Tomaslopera/Fall_Marathons_API.git)
cd fall-marathons-api
2. **Instalar dependencias:**
```bash
pip install -r requirements.txt
3. **Configurar la base de datos**
4. **Levantar el contenedor de docker:**
```bash
docker-compose up --build
5. **Publicar la API usando NGROK:**
```bash
ngrok http 8000
**LINK A LA API:**
```bash
[ngrok http 8000](https://9b19-190-28-11-78.ngrok-free.app/docs)