La virtualización vs contenerización. … optimizando el uso de recursos y mejorando la portabilidad, pero lo hacen de maneras fundamentalmente distintas, lo que las hace idóneas para escenarios operativos específicos.

En el vertiginoso mundo de la tecnología moderna, la eficiencia y la agilidad en el despliegue de aplicaciones son fundamentales. Dos tecnologías que han revolucionado la forma en que las organizaciones gestionan sus cargas de trabajo son la virtualización y la contenerización. Ambas ofrecen soluciones para aislar aplicaciones y sus dependencias, optimizando el uso de recursos y mejorando la portabilidad, pero lo hacen de maneras fundamentalmente distintas, lo que las hace idóneas para escenarios operativos específicos.

La virtualización, una tecnología con más de dos décadas de madurez, implica la creación de Máquinas Virtuales (VMs). Cada VM es una emulación completa de un sistema informático físico, que incluye su propio sistema operativo (conocido como sistema operativo invitado), librerías, aplicaciones y recursos de hardware virtualizados. Un hypervisor es el software encargado de gestionar estas VMs y asignarles recursos del hardware físico subyacente. Esta arquitectura proporciona un aislamiento robusto, ya que cada VM es completamente independiente de las demás, con su propio núcleo de sistema operativo y espacio de memoria.

Por otro lado, la contenerización, popularizada por Docker y orquestada por herramientas como Kubernetes, adopta un enfoque más ligero. Los contenedores no virtualizan el hardware completo ni incluyen un sistema operativo invitado. En su lugar, comparten el núcleo del sistema operativo del host. Cada contenedor encapsula únicamente la aplicación y sus dependencias (librerías, archivos de configuración) en un paquete aislado. Esto los hace increíblemente eficientes en cuanto a recursos, con tiempos de inicio casi instantáneos y un tamaño mucho menor en comparación con las máquinas virtuales.

La diferencia cardinal radica en el nivel de abstracción. Las VMs abstraen el hardware, permitiendo que múltiples sistemas operativos se ejecuten en una sola máquina física. Los contenedores, en cambio, abstraen el sistema operativo, permitiendo que múltiples aplicaciones aisladas compartan el mismo núcleo del sistema operativo del host. Esta distinción influye directamente en el consumo de recursos: mientras que una VM requiere gigabytes de RAM y varios gigabytes de almacenamiento para su sistema operativo invitado, un contenedor puede operar con solo unos pocos megabytes adicionales al tamaño de la aplicación.

Entonces, ¿cuándo es preferible utilizar la virtualización? Las VMs son la opción superior cuando se requiere un aislamiento de seguridad extremadamente fuerte, o si se necesitan ejecutar múltiples sistemas operativos diferentes (Windows, Linux, etc.) en el mismo hardware físico. Son ideales para aplicaciones legadas que tienen requisitos de sistema operativo muy específicos, para entornos de desarrollo y pruebas que necesitan simular máquinas físicas completas, o cuando la consolidación de servidores heterogéneos es una prioridad, ofreciendo un entorno completamente autónomo para cada carga de trabajo.

La contenerización brilla en entornos de desarrollo ágil y DevOps. Es la solución predilecta para arquitecturas de microservicios, donde las aplicaciones se dividen en componentes pequeños e independientes que se pueden desplegar y escalar individualmente. Los contenedores facilitan la portabilidad, garantizando que una aplicación se ejecute de manera idéntica desde el entorno de desarrollo hasta la producción. Son excelentes para escalar rápidamente servicios web, aplicaciones sin estado y entornos de integración y despliegue continuo (CI/CD), donde la velocidad y la eficiencia son críticas.

En última instancia, no existe una tecnología “mejor” de forma universal; la elección entre virtualización y contenerización depende enteramente de los requisitos específicos del proyecto, los recursos disponibles y la estrategia operativa. Muchas organizaciones optan por un enfoque híbrido, ejecutando contenedores dentro de máquinas virtuales. Las VMs proporcionan una capa robusta de aislamiento y seguridad a nivel de infraestructura, mientras que los contenedores ofrecen agilidad y eficiencia a nivel de aplicación, combinando lo mejor de ambos mundos para construir infraestructuras resilientes y flexibles.

OLLAma LA IA ejecutandose en tu Pc

¿Qué es Ollama y para qué sirve?

Ollama es un proyecto de código abierto que permite ejecutar modelos de lenguaje grandes (LLMs) de manera local en tu propio hardware. Es una herramienta diseñada para simplificar el proceso de ejecutar, gestionar e interactuar con modelos de IA sin depender de servicios en la nube.

Características principales

  • Ejecución local de modelos de lenguaje populares como Llama, Mistral, Code Llama, entre otros
  • Interfaz de línea de comandos simple e intuitiva
  • Optimización para diferentes plataformas (Mac con Apple Silicon, Windows con WSL2, Linux)
  • Gestión automática de recursos y memoria
  • Soporte para modelos cuantizados para reducir el uso de recursos

Usos principales

  1. Privacidad y seguridad: Los datos procesados permanecen en tu dispositivo sin salir a internet
  2. Trabajo offline: Funciona sin necesidad de conexión a internet
  3. Experimentación: Permite probar y comparar diferentes modelos de forma local
  4. Desarrollo de aplicaciones: Facilita la integración de IA en aplicaciones locales
  5. Investigación: Ideal para investigadores que necesitan probar modelos modificados

Posibilidades además de tener IA local

  1. Personalización de modelos: Puedes ajustar y afinar modelos para necesidades específicas
  2. Creación de APIs: Exponer tus modelos locales como servicios API
  3. Automatización de tareas: Integrar modelos en flujos de trabajo automatizados
  4. Educación: Aprender sobre cómo funcionan los LLMs experimentando con ellos directamente
  5. Desarrollo de aplicaciones locales: Crear aplicaciones que funcionen completamente sin conexión
  6. Edge computing: Implementar IA en dispositivos con recursos limitados
  7. Colaboración: Compartir modelos personalizados con otros usuarios de Ollama

Ollama representa una alternativa accesible para quienes desean experimentar con IA manteniendo el control sobre sus datos y sin depender de servicios en la nube.

Tienes la posibilidad de descargar tu docker de ollama para ser consultado para usar algunos modelos de IA en la nube y locales poder hacer de agentes de ia para generar planes de negocio. Hacer consultas con cierto capacitado en la materia que es modelado con la IA con un promtp si que tu necesariamente sepas del tener tu séquito de especialistas para tu crecimiento personal y emocional.

Como descargar tu docker de ollama primero debes tener tu docker intalado en linux widows o mac una vez teniéndolo debes puedes usar los siguientes comandos:

Primero bajas el contenedor ollama con run y las siguientes para paramentros para que salga por internet:

#docker run -d -v ollama:/root/.ollama -p 11434:11434 –name ollama ollama/ollama

Luego revisas si ya tienes el contenedor descardo

#docker ps -a | grep ollama

Inicaias el contenedor
#docker start ollama

Acedes dentro del contenedor estado dentro descargas lo modelos de IA que vas ocupar cuando los tengas descargaso ya los puedes usar


#docker exec -it ollama bash

root@mv-HProBook-4530s:/home/mvillegas/Documentos/chatbotSicologo/10couchdeamorH# docker exec -it ollama bash
root@eb197a7e7903:/# ollama list
NAME ID SIZE MODIFIED
kimi-k2:1t-cloud 20dc43ca06d7 – 6 days ago
qwen3-coder:480b-cloud e30e45586389 – 6 days ago
glm-4.6:cloud 05277b76269f – 6 days ago
gpt-oss:120b-cloud 569662207105 – 3 weeks ago
qwen:4b d53d04290064 2.3 GB 3 weeks ago
gemma3:latest a2af6cc3eb7f 3.3 GB 3 weeks ago
llama3:latest 365c0bd3c000 4.7 GB 3 weeks ago
root@eb197a7e7903:/# ollama run gpt-oss:120b-cloud
Connecting to ‘gpt-oss:120b’ on ‘ollama.com’ ⚡

root@eb197a7e7903:/# ollama run deepseek-v3.1:671b-cloud
pulling manifest
pulling 8aacb627728e: 100% ▕████▏ 405 B
verifying sha256 digest
writing manifest
success
Connecting to ‘deepseek-v3.1:671b’ on ‘ollama.com’ ⚡

root@eb197a7e7903:/# ollama list
NAME ID SIZE MODIFIED
deepseek-v3.1:671b-cloud d3749919e45f – 11 seconds ago
kimi-k2:1t-cloud 20dc43ca06d7 – 6 days ago
qwen3-coder:480b-cloud e30e45586389 – 6 days ago
glm-4.6:cloud 05277b76269f – 6 days ago
gpt-oss:120b-cloud 569662207105 – 3 weeks ago
qwen:4b d53d04290064 2.3 GB 3 weeks ago
gemma3:latest a2af6cc3eb7f 3.3 GB 3 weeks ago
llama3:latest 365c0bd3c000 4.7 GB 3 weeks ago

Un ejemplo de chat-boot ejecutando en pyton y ollama es https://ia.servicioseti.com/

si quieres tener ollama y open WebUI ocupas dos contenedores que se puedan conectar entre ellos: solo copias y pegas el docker-compose.yml en un editor de texto y lo guardas en donde lo guardes ejecutas esto en terminal ya teniendo docker

docker compose up -d 
si necesitas bajar algún modelo de IA
/OllamaW# docker exec -it ollama bash
root@e7c1c811ef69:/# ollama list
NAME                            ID              SIZE      MODIFIED    
gemini-3-pro-preview:latest     91a1db042ba1    -         9 days ago     
phi3:latest                     4f2222927938    2.2 GB    10 days ago    
qwen3:0.6b                      7df6b6e09427    522 MB    10 days ago    
kimi-k2:1t-cloud                20dc43ca06d7    -         10 days ago    
deepseek-v3.1:671b-cloud        d3749919e45f    -         10 days ago    
glm-4.6:cloud                   05277b76269f    -         10 days ago    
qwen3-vl:235b-instruct-cloud    2bf9522f6961    -         10 days ago    
qwen3-vl:235b-cloud             86b3322ec200    -         10 days ago    
gpt-oss:120b-cloud              569662207105    -         10 days ago    
root@e7c1c811ef69:/# ollama run minimax-m2:cloud
pulling manifest 
pulling 32677c818575: 100% ▕█████████████████▏  382 B                         
verifying sha256 digest 
writing manifest 
success 
Connecting to 'minimax-m2' on 'ollama.com' ⚡
>>> 

docker-compose.yml

version: "3.8"

services:
  ollama:
    image: ollama/ollama:latest
    container_name: ollama
    restart: unless-stopped
    ports:
      # Solo expón este puerto si quieres usar la CLI de ollama desde el host
      - "11434:11434"
    environment:
      - OLLAMA_HOST=0.0.0.0:11434
    volumes:
      - ollama_data:/root/.ollama
    networks:
      - llm-net

  open-webui:
    image: ghcr.io/open-webui/open-webui:main
    container_name: open-webui
    restart: unless-stopped
    ports:
      - "8080:8080"
    environment:
      - OLLAMA_API_BASE_URL=http://ollama:11434/api
      - WEBUI_SECRET_KEY=passwordcambiame                    # Cambia esta clave
    volumes:
      - openwebui_data:/app/backend/data
    depends_on:
      - ollama
    networks:
      - llm-net

volumes:
  ollama_data:
  openwebui_data:

networks:
  llm-net:
    driver: bridge