Ambientes Homog茅neos para Applicaciones

2/21
Recursos

Una de las maneras de resolver el 鈥溾渋t works in my machine鈥濃 es teniendo homogeneidad en todos los ambientes. El ejecutar c贸digo en nuestra m谩quina local debe parecerse lo m谩s posible al ambiente de pruebas y producci贸n.

Docker es lo recomendado, funciona para todos los sistemas operativos(WIN10 Pro solamente) y es reproducible, podemos tener una infraestructura que comparta todo. Las im谩genes son reproducibles, programables y la documentaci贸n est谩 en el mismo c贸digo.

Aportes 22

Preguntas 3

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesi贸n.

Deploy = Despliegue.
Deployable = Desplegable.

Me interesa mucho este tema, el facilitador tiene mucha calma para explicar y esto me agrada mucho

Pareciera que el curso no comenzara en este video, no falta algun video o clase previa?

La idea de tener docker para asegurar que independientemente del SO puedan ejecutarse las aplicaciones me hizo explotar la cabeza

Hace poco tuve un caso en mi lugar de trabajo. Todos usamos docker tanto desarrolladores como operadores pero resulta que algunos desarrolladores usan Mac con procesador M1 y al correr el dockerfile del aplicativo este no funciono y fue por la arquitectura del M1 porque cambie el paquete a instalar por ARM y funciono, es curioso porque se asegura que el SO no importa con docker pero al parecer la arquitectura del procesador si, por lo que mantener ambientes homog茅neos en algunos casos se complica.

The Twelve-Factor App
.
10. Dev/prod parity
.
Una aplicaci贸n debe mantener una diferencia m铆nima entre su estado en desarrollo y su estado en entorno de producci贸n.
.
Si quieres saber m谩s visita el siguiente enlace: https://12factor.net/dev-prod-parity

docker es el rey para tener tu ambiente de desarrollo en local y asi de facil y rapido lo llevas a produccion. aca hay un curso buenissimo de docker con el profe guido vilari帽o, ese man es un teso en docker

Una de las opciones, Docker, como homogeneidad en todos los ambientes.

La soluci贸n para el t铆pico problema de 鈥渋t only works on my machine鈥 es la homogeneidad en todos los ambientes: desarrollo, CI, producci贸n, etc.
La homogeneidad es llevada a cabo con la implementaci贸n de m谩quinas virtuales o contenedores, muy recomendablemente, contenedores (Docker). Docker puede ser usado en cualquiera de los sistemas operativos y es reproducible.

Podemos tener por ejemplo, una infraestructura que comparte todo; tenemos el sistema operativo (no importa cu谩l sea), pero lo que est谩 dentro del contenedor es lo importante; la capa de Docker es compartida entre todas las aplicaciones que est谩n corriendo; y sin importar cu谩l sea el sistema operativo o el entorno, sabemos perfectamente c贸mo se va a comportar el contenedor.

Los contenedores son reproducibles, programables y la documentaci贸n es el c贸digo mismo.

Las m谩quinas virtuales no son tan portables como los contenedores y suelen tener problemas de instalaci贸n en diferentes entornos o sistemas operativos.

Que alternativa a docker podria usar para un equipo aun muy inexperto?

Deploy = Despliegue = cambios listos para aplicarse
Deployable= Desplegable = cambios revisados y listos para aplicarse

El c贸mo se hace eso

Espero aprender mucho de este curso, el profesor parece manejar el tema muy bien

Me parece muy internaste lo que se menciona de Docker como configurar estos ambientes

Homogeneidad: los ambientes deben de ser iguales, para ello se puede utilizar Docker.

DevOps para simplificar

Genial 馃槂

Ambiente se refiere a Entorno

Generalmente me pasa que hoy tenemos esos problemas est谩 bueno entonces comenzar a usar docker鈥!

Nota mental: Siempre utilizar contenedores.

como se menciono una gran ventaja de usar docker con o sin docker compose es que tienes un instructivo Dockerfile y/o docker-compose.yml de como correr tu aplicacion, version del lenguaje, dependencias del OS, etc
con base a mi experiencia una gran ayuda, es que en dichos archivos de configuracion se listan las variables de entorno que la aplicacion necesita para correr y si usas docker compose incluso se listan los servicios que necesita tu app como bases de datos o multiples bases de datos etc