E120 - Demo: Reproducibilidad, modo de prueba y docker

24-12-2024 · 93 min · Ver en YouTube

Resumen

En este episodio (120 de enCoders), Rodo presenta la tercera parte de una serie sobre un proyecto de ciencia de datos que pasó de un Jupyter Notebook a una estructura ordenada con pipelines, logs y salidas guardadas. El foco es la reproducibilidad: poder ejecutar el mismo proyecto en otro computador, servidor o sistema operativo con los mismos resultados. Se distinguen repetibilidad, reusabilidad, replicabilidad y reproducibilidad, y se aclara la diferencia entre archivos `.env` (variables de ambiente), ambientes virtuales, máquinas virtuales y Docker. Se demuestra recrear un ambiente virtual con `requirements.txt`, implementar un "modo de pruebas" que ejecuta el pipeline con una muestra de datos para iterar rápido, y luego instalar Docker Desktop con WSL2 en Windows. Finalmente se construye un Dockerfile, se crea una imagen, se levanta un contenedor y se desarrolla dentro de él con la extensión de Docker y Dev Containers de VS Code. La conclusión: las buenas prácticas toman tiempo y disciplina, pero evitan mucho dolor al traspasar o poner en producción un proyecto.

Capítulos

Palabras clave

reproducibilidaddockerdockerfileambientes virtualesvenvrequirementsmodo de pruebaswsl2docker desktopdevcontainervariables de ambientepipeline