Cómo instalar Ollama en Docker paso a paso
Según el uso que le quieras dar, puede tener sentido elegir un tipo de servidor distinto para ejecutar Ollama: para chatbots sencillos suele bastar con un servidor virtual potente, mientras que los agentes, las tareas de programación o los modelos más grandes suelen requerir una GPU o incluso hardware dedicado. Ollama simplifica enormemente la ejecución local y en servidor de modelos de lenguaje extensos, ya que se encarga de gestionar los modelos, iniciarlos y exponerlos mediante una API sencilla.
¡Prueba tu servidor virtual durante 30 días! Si lo solicitas, te reembolsaremos todos los gastos incurridos.
¿Qué es Ollama?
Ollama es un software que te permite ejecutar modelos de lenguaje extensos como Gemma, Qwen, DeepSeek u otros modelos compatibles de forma local o en tu propio servidor. Para ello, ofrece una interfaz de línea de comandos sencilla y una API REST, con las que puedes iniciar modelos e integrarlos en tus propias aplicaciones. Así, Ollama no solo sirve para chatear en el terminal, sino también como backend para servir modelos para tus propias herramientas, asistentes o entornos de desarrollo.
Ollama resulta especialmente atractivo si no quieres depender de un servicio en la nube externo y prefieres ejecutar los modelos en tu propia infraestructura. Las interacciones se procesan de forma local y el software se encarga de cargar y ejecutar los modelos, además de ofrecer acceso mediante la línea de comandos o la API. Esto lo hace especialmente práctico si estás empezando, ya que no necesitas configurar toda la infraestructura de inferencia desde cero y puedes empezar con unos pocos comandos.
Ollama se utiliza en muchos proyectos de IA como backend de modelos, ejecutando modelos de lenguaje de forma local o en un servidor y exponiéndolos a través de una API. Sobre esta base, se pueden usar frameworks de agentes como OpenClaw con Ollama para automatizar flujos de trabajo complejos. En este tipo de configuraciones, Ollama se encarga de la inferencia del modelo, mientras que OpenClaw gestiona tareas como el uso de herramientas, procesos con varios niveles de agentes o acciones automatizadas.
¿Qué servidor encaja con tu proyecto?
Antes de empezar con la instalación, conviene definir para qué quieres usar realmente Ollama. No todas las aplicaciones necesitan una GPU, pero en cuanto necesites respuestas fluidas, ejecutar varias solicitudes en paralelo o trabajar con modelos de IA más grandes, los requisitos aumentan rápidamente.
El tamaño del modelo es un factor clave: como referencia, Ollama recomienda al menos 8 GB de RAM para modelos de 7B, 16 GB para modelos de 13B y 64 GB para modelos de 70B. Además, la VRAM disponible en la GPU también es decisiva, ya que influye directamente en la velocidad, la longitud del contexto y la usabilidad en la práctica.
Caso de uso 1: tareas de texto sencillas, pruebas y pequeños chatbots
Si quieres usar Ollama principalmente para pruebas, generación de texto sencilla, pequeños bots o tests internos, suele bastar con un servidor virtual (VPS) potente sin GPU dedicada. En este escenario se utilizan normalmente modelos de IA más pequeños.
Estos requieren al menos 8 GB de RAM, aunque en la práctica conviene contar con cierto margen para que el sistema operativo, Docker y los procesos en segundo plano no ralenticen el sistema. Por eso, se recomienda tener 16 GB de RAM para empezar con un servidor Ollama. También debes prever suficiente espacio de almacenamiento, ya que además del entorno Docker hay que guardar los modelos, que pueden ocupar rápidamente varios gigabytes.
La principal ventaja de un servidor virtual es su bajo coste y la facilidad de puesta en marcha. Como contrapartida, la velocidad es claramente inferior a la de los servidores con GPU Para dar los primeros pasos con Ollama, un VPS con 4 vCPU, 16 GB de RAM y almacenamiento SSD suele ser más que suficiente.
Caso de uso 2: bots internos de conocimiento, pequeñas API y embeddings
Si quieres usar Ollama como backend para una base de conocimiento interna, para generación aumentada mediante recuperación (RAG) o para embeddings, los requisitos son mayores. Aquí no se trata solo de generar una respuesta puntual, sino de gestionar llamadas API recurrentes, procesos en segundo plano y una ejecución más estable.
Aunque estos escenarios pueden funcionar en un servidor CPU o en un VPS grande, conviene contar con más memoria RAM para evitar recargas constantes de modelos y datos. Un servidor con entre 16 y 32 GB de RAM ofrece una experiencia mucho más fluida en este tipo de aplicaciones.
Si además varias personas utilizan el servicio al mismo tiempo, conviene optar por una CPU con más núcleos o dar el salto a un servidor GPU. Ollama no solo permite generar texto, sino también crear embeddings a través de la API, lo que lo convierte en una opción interesante para sistemas de búsqueda y conocimiento.
Para equipos pequeños o herramientas internas, un VPS grande o un servidor dedicado básico sin GPU puede ser suficiente, siempre que no necesites tiempos de respuesta muy bajos. Si buscas una experiencia más fluida, especialmente en escenarios interactivos, merece la pena considerar una GPU. En general, cuanto más interactivo y concurrente sea el uso, antes alcanzará sus límites un servidor basado solo en CPU.
Caso de uso 3: asistentes de programación y agentes fluidos
Si quieres usar Ollama para asistentes de programación, agentes semiautónomos u otros flujos de trabajo interactivos, una GPU pasa a ser prácticamente imprescindible. La razón es sencilla: este tipo de aplicaciones depende de tiempos de respuesta rápidos y de que los modelos puedan manejar contextos largos de forma fluida.
La longitud de contexto depende, entre otros factores, de la VRAM disponible. Para agentes, búsqueda web, herramientas de programación o flujos de trabajo complejos, la documentación recomienda una longitud de contexto de entre 32 000 y 64 000 tokens.
Por eso, un servidor virtual basado solo en CPU no suele ser la mejor opción en estos escenarios. Resulta más adecuado un servidor en la nube con una GPU NVIDIA moderna, junto con suficiente RAM y almacenamiento NVMe rápido. Así podrás ejecutar modelos de tamaño medio de forma mucho más eficiente y trabajar con flujos de agentes multinivel sin problemas.
Para proyectos individuales ambiciosos, prototipos o equipos de desarrollo, esta configuración suele ofrecer el mejor equilibrio entre coste y rendimiento.
Caso de uso 4: aplicaciones profesionales con varios usuarios
Si quieres usar Ollama como parte estable de una aplicación profesional, los requisitos cambian de nuevo. Ya no se trata solo de que el modelo funcione, sino de que lo haga de forma estable, reproducible y con buen rendimiento bajo carga.
En estos casos, debes planificar suficiente RAM, una GPU potente, capacidad para ejecutar varios procesos en paralelo, monitorización y espacio de almacenamiento para varios modelos. Como Ollama expone los modelos mediante una API, puede integrarse fácilmente como backend interno, pero la elección del servidor debe centrarse en la disponibilidad y el rendimiento bajo carga.
Un servidor dedicado con GPU potente o un servidor en la nube profesional con GPU suele ser más adecuado que un servidor virtual pequeño. En este tipo de entornos, se recomiendan al menos 64 GB de RAM, junto con una GPU NVIDIA potente y una arquitectura limpia que garantice la persistencia de los modelos.
Además, en entornos productivos es fundamental que Docker y, si procede, NVIDIA Container Toolkit estén correctamente configurados para que la GPU pueda utilizarse dentro del contenedor Docker.
Caso de uso 5: modelos muy grandes e inferencia de alto nivel
Si quieres ejecutar modelos muy grandes, en el rango de 70B o más, entras claramente en la gama alta. Ollama indica para estos modelos un mínimo aproximado de 64 GB de RAM. En la práctica, los entornos basados en la virtualización suelen quedarse cortos, sobre todo si buscas buenos tiempos de respuesta o necesitas ejecutar varios procesos en paralelo.
Para estos escenarios, lo más adecuado es un servidor dedicado con hardware GPU de alto rendimiento. Un servidor virtual o infraestructuras compartidas no suelen ofrecer la potencia necesaria.
En entornos profesionales, se utilizan sistemas GPU especializados con gran cantidad de VRAM, como servidores con tarjetas NVIDIA A100 o NVIDIA H100, o configuraciones equivalentes de alto rendimiento. Este tipo de infraestructura implica un coste elevado, pero para modelos grandes, contextos extensos y cargas de trabajo exigentes es prácticamente imprescindible.
Resumen: ¿qué servidor elegir según el uso?
| Objetivo | Hardware recomendado | Coste (estimado) |
|---|---|---|
| Bot o API sencilla | VPS con 4 vCPU, 16 GB de RAM, SSD | + |
| Bots internos y embeddings | VPS grande o pequeño servidor dedicado con 16–32 GB de RAM | + / ++ |
| Programación y agentes | Servidor en la nube con GPU moderna | ++ |
| Aplicaciones profesionales | Servidor en la nube con GPU potente o servidor dedicado con mucha RAM | ++ / +++ |
| Gama alta (70B+) | Servidor dedicado con A100/H100 o GPU de gama alta comparable | +++ |
Leyenda de costes: + = bajo, ++ = medio, +++ = alto
Instalar Ollama en un servidor con Docker paso a paso
En este apartado verás cómo instalar Ollama en un servidor Linux con Docker. Si estás empezando, esta combinación resulta especialmente práctica, ya que Ollama se ejecuta en un contenedor y apenas necesitas realizar cambios manuales en el sistema.
Si quieres utilizar una GPU NVIDIA en Linux, también tendrás que instalar NVIDIA Container Toolkit, que permite a Docker acceder a la GPU desde el contenedor.
Paso 1: conectarte al servidor
Primero, conéctate a tu servidor mediante SSH. Para ello necesitas la dirección IP y un usuario con permisos de sudo.
ssh NOMBRE-DE-USUARIO@IP-DEL-SERVIDORbashCuando te conectas por primera vez, tu sistema suele pedirte que confirmes la clave del host. Escribe yes y, a continuación, introduce tu contraseña o usa tu clave SSH. Después accederás al terminal de tu servidor y podrás empezar con la configuración.
Paso 2: actualizar el sistema
Antes de instalar Ollama y Docker, conviene actualizar las listas de paquetes y los paquetes ya instalados. Así te aseguras de que tu sistema esté al día en cuanto a seguridad y versiones. Especialmente en un servidor recién configurado, este paso es fundamental antes de instalar más software.
sudo apt update && sudo apt upgrade -ybashPaso 3: instalar Docker
En Ubuntu 24.04, Docker recomienda instalarse a través del repositorio oficial APT. Para ello, se configura el repositorio en formato Deb822 en /etc/apt/sources.list.d/docker.sources. Este método es compatible, entre otros, con Ubuntu 24.04 y arquitecturas como amd64 y arm64. Primero, instala los paquetes necesarios:
sudo apt install ca-certificates curl -ybashA continuación, crea el directorio para el llavero:
sudo install -m 0755 -d /etc/apt/keyringsbashDespués, descarga la clave oficial de Docker:
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.ascbashAhora configura el repositorio de Docker:
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Signed-By: /etc/apt/keyrings/docker.asc
EOFbashVuelve a actualizar la lista de paquetes:
sudo apt updatebashInstala Docker Engine junto con el plugin de Compose:
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -ybashComprueba que Docker se esté ejecutando correctamente:
sudo systemctl status dockerbashDeberías ver el estado “active (running)”, lo que confirma que Docker se está ejecutando.

sudo docker run hello-worldbashSi aparece un mensaje de confirmación, Docker se ha instalado correctamente.

Paso 4: usar Docker sin sudo (opcional)
Por defecto, Docker se ejecuta en Linux con sudo. Si prefieres usarlo sin sudo, puedes añadir tu usuario al grupo docker:
sudo groupadd docker
sudo usermod -aG docker $USER
newgrp dockerbashDespués, comprueba si Docker funciona sin sudo:
docker run hello-worldbashPaso 5: instalar NVIDIA Container Toolkit (solo si usas GPU NVIDIA)
Este paso solo es necesario si tu servidor cuenta con una GPU NVIDIA y quieres que Ollama la utilice dentro del contenedor Docker.
Primero, instala los paquetes necesarios:
sudo apt-get update && sudo apt-get install -y --no-install-recommends ca-certificates curl gnupg2bashA continuación, añade el repositorio de NVIDIA:
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.listbashActualiza la lista de paquetes e instala el toolkit:
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkitbashConfigura Docker para que pueda usar la GPU:
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart dockerbashSi los controladores de la GPU están correctamente instalados, Docker podrá acceder a la GPU desde los contenedores.
Paso 6: iniciar el contenedor de Ollama
Ahora ya puedes ejecutar Ollama como contenedor Docker. La imagen oficial es ollama/ollama. Si vas a usar solo CPU, ejecuta el siguiente comando:
sudo docker run -d \
-v ollama:/root/.ollama \
-p 11434:11434 \
--name ollama \
ollama/ollamabashSi utilizas una GPU NVIDIA y ya has completado el paso 5, inicia el contenedor así:
sudo docker run -d \
--gpus=all \
-v ollama:/root/.ollama \
-p 11434:11434 \
--name ollama \
ollama/ollamabashPaso 7: comprobar si el contenedor está en ejecución
A continuación, verifica en la terminal si el contenedor se ha iniciado correctamente:
sudo docker psbashEn la salida debería aparecer un contenedor con el nombre ollama. También verás que el puerto 11434 está publicado en el host, que es donde Ollama pone a disposición su API.

Paso 8: descargar y ejecutar un primer modelo
Una vez que el contenedor esté en ejecución, puedes iniciar tu primer modelo. Para ello, ejecuta el comando de Ollama directamente dentro del contenedor con docker exec:
sudo docker exec -it ollama ollama run llama3bashLa primera vez, Ollama descargará el modelo automáticamente. Este proceso puede tardar varios minutos, dependiendo del tamaño del modelo y de la conexión del servidor. Una vez completada la descarga, accederás a una consola interactiva en la que podrás introducir tus primeras consultas.

Si quieres utilizar otro modelo en lugar de Llama3, basta con indicar su nombre en el comando. En la biblioteca de Ollama encontrarás una selección de modelos disponibles, entre ellos opciones actuales como Gemma 3, Qwen3 o DeepSeek-R1.
Paso 9: probar la API de Ollama
Ollama expone automáticamente una API tras iniciarse. Según la documentación oficial, el endpoint base es http://localhost:11434/api. Puedes hacer una prueba directamente en el servidor con curl.
Un ejemplo de solicitud de generación sencilla sería el siguiente:
curl http://localhost:11434/api/generate -d '{
"model": "gemma3",
"prompt": "Explica en dos frases qué es Ollama.",
"stream": false
}'bashSi todo funciona correctamente, recibirás una respuesta en formato JSON o una salida en streaming del modelo. Así puedes comprobar que no solo el contenedor está en ejecución, sino que la API también responde correctamente.

Paso 10: trabajar con Docker Compose
Para un servidor en funcionamiento continuo, Docker Compose suele ser más cómodo que usar un comando docker run. Permite guardar la configuración en un archivo y ajustarla fácilmente más adelante.
Primero, crea un directorio para la configuración:
mkdir -p ~/ollama
cd ~/ollamabashDespués, crea un archivo llamado compose.yaml. Aquí usamos el editor nano, pero puedes utilizar cualquier otro:
nano compose.yamlbashPara ejecutar Ollama con CPU, añade este contenido:
services:
ollama:
image: ollama/ollama
container_name: ollama
ports:
- "11434:11434"
volumes:
- ollama:/root/.ollama
restart: unless-stopped
volumes:
ollama:yamlSi quieres usar una GPU NVIDIA, puedes ampliar la configuración según tu entorno Docker. Para quienes empiezan, suele ser más sencillo utilizar docker run --gpus=all, ya que la configuración con Compose puede variar según la versión de Docker. En cualquier caso, es importante que Docker esté configurado correctamente para usar el runtime de NVIDIA.
A continuación, inicia el servicio:
sudo docker compose up -dbash
Comprueba el estado del contenedor:
sudo docker compose psbash
Paso 11: indicaciones importantes para el funcionamiento práctico
Si quieres usar Ollama en un entorno productivo o hacerlo accesible desde otros dispositivos de tu red, no deberías exponer el servicio a Internet sin una configuración adecuada. Aunque Ollama utiliza por defecto el puerto 11434, en la configuración Docker mostrada la API se publica en el host mediante -p 11434:11434. Según tu configuración de red y del cortafuegos, esto puede hacer que el servicio sea accesible desde el exterior.
Si quieres limitar el acceso únicamente al propio servidor, vincula el puerto a 127.0.0.1, por ejemplo con -p 127.0.0.1:11434:11434, y configura las reglas del cortafuegos de forma restrictiva.
También debes tener en cuenta el almacenamiento: los modelos se guardan localmente y pueden ocupar varios gigabytes. En Linux se aplica lo mismo que en otros sistemas: los modelos requieren bastante espacio, especialmente si trabajas con varios a la vez o con versiones más grandes.
Por último, el rendimiento depende en gran medida de la VRAM disponible. Para contextos largos, agentes o aplicaciones de programación, disponer de suficiente VRAM es clave, ya que Ollama ajusta por defecto la longitud de contexto según la VRAM disponible.

