
Ejecutar modelos de lenguaje de gran tamaño (LLMs) localmente se ha vuelto cada vez más popular para desarrollo, privacidad y pruebas sin conexión. Ollama simplifica este proceso al máximo, permitiendo ejecutar modelos como Llama 3 o Mistral directamente en tu máquina.
Aprovechando Podman en Fedora Linux, puedes aislar Ollama dentro de un contenedor. Este enfoque mantiene limpio tu sistema anfitrión mientras facilita levantar, gestionar y eliminar tu entorno de desarrollo de IA sin complicaciones.
¿Qué es Ollama?
Ollama es un marco de trabajo de código abierto diseñado para ejecutar, crear y compartir modelos de lenguaje de gran tamaño. Empaqueta los pesos del modelo, la configuración y los datos en un sistema de gestión unificado. Ejecutarlo dentro de un contenedor significa que no tendrás que lidiar con dependencias locales complejas, entornos de Python o configuraciones complicadas de controladores de GPU en tu sistema operativo base.
Verificar o instalar Podman
Podman está disponible de forma predeterminada en Fedora Workstation. Si por algún motivo no lo tienes, puedes instalarlo fácilmente con DNF:
$ sudo dnf install podman -y
Para los usuarios de Fedora Linux Silverblue, Podman está preinstalado de forma nativa en el sistema base inmutable, así que no se requieren pasos adicionales.
Para verificar la instalación y asegurarte de que todo funcione correctamente, ejecuta una comprobación rápida:
$ podman --version
Paso 1: Crear un volumen persistente para tus modelos
Los pesos de los LLM pueden ser enormes: a menudo ocupan entre 4 GB y más de 40 GB, según el tamaño del modelo. Para evitar tener que descargar estos modelos cada vez que reinicies el contenedor, crea un volumen persistente de Podman para almacenarlos de forma segura en tu disco anfitrión:
$ podman volume create ollama_storage
Paso 2: Ejecutar el contenedor de Ollama
A continuación, levanta el contenedor de Ollama. El siguiente comando descarga la imagen oficial, conecta el volumen que acabamos de crear y mapea el puerto de comunicación (
) a tu máquina anfitriona.
$ podman run -d \ -v ollama_storage:/root/.ollama \ -p 11434:11434 \ --name ollama \ ollama/ollama
Nota sobre la aceleración por hardware
El comando anterior ejecuta Ollama utilizando únicamente la CPU. Si estás en Fedora Workstation o Silverblue y quieres aprovechar una GPU Nvidia para una aceleración por hardware más rápida, asegúrate de tener instalado el Nvidia Container Toolkit y añade la siguiente bandera:
--device nvidia.com/gpu=all
Paso 3: Descargar y ejecutar un modelo de IA
Con el contenedor ejecutándose en segundo plano, puedes interactuar con él usando el comando de ejecución de Podman. Vamos a descargar y ejecutar Llama 3, un modelo ligero de gran capacidad, perfecto para el desarrollo local:
$ podman exec -it ollama ollama run llama3
La primera vez que ejecutes esto, Podman descargará los pesos del modelo en tu volumen
. Una vez completada la descarga, accederás directamente a una terminal interactiva:
>>> Send a message (/? for help) >>> Tell me a fun fact about Fedora Linux. Fedora Linux is named after the iconic felt hat worn by the Red Hat shadowman logo! It started as a community project to provide extra packages for Red Hat Linux. >>> To exit the interactive prompt, simply type /exit.
Paso 4: Interactuar con la API local
Como hemos mapeado el puerto 11434 a nuestro sistema anfitrión, también puedes interactuar con tu instancia local de Ollama a través de su API REST integrada. Abre una ventana de terminal normal y envía una petición con curl:
curl http://localhost:11434/api/generate -d '{
"model": "llama3",
"prompt": "Why use containers?",
"stream": false
}'
Esto devuelve una carga JSON estructurada con la respuesta, lo que te permite conectar fácilmente tu modelo local a aplicaciones web, scripts o extensiones de IDE.
Verificar el estado del contenedor
Para monitorear tu instancia local de IA en ejecución, usa los comandos clásicos de gestión de Podman. Por ejemplo, empieza con:
$ podman ps
También puedes inspeccionar los registros para asegurarte de que el servidor de la API esté escuchando correctamente:
$ podman logs ollama
Cuando termines tu sesión de desarrollo y quieras liberar memoria del sistema, detén el contenedor:
$ podman stop ollama
Si alguna vez necesitas eliminar por completo el entorno del contenedor, utiliza:
$ podman rm ollama
Nota: Tus modelos descargados están completamente seguros dentro del volumen ollama_storage y se volverán a conectar instantáneamente la próxima vez que levantes el contenedor.
Conclusión
Usar Podman para gestionar Ollama en Fedora Linux o Fedora Silverblue ofrece una forma limpia y contenida de crear y probar aplicaciones con LLMs completamente sin conexión. Evita la contaminación del entorno anfitrión, aísla de forma ordenada el almacenamiento de modelos grandes en un volumen con nombre y trata tu pila de IA exactamente como cualquier otro microservicio.



