Cómo instalar Docker en un VPS Ubuntu: guía paso a paso en 2026

Por qué Docker ha cambiado la forma de desplegar aplicaciones en un VPS

Hace unos años, instalar una aplicación en un servidor implicaba configurar dependencias, versiones de librerías y variables de entorno que podían entrar en conflicto entre sí. Si tenías dos aplicaciones que necesitaban versiones diferentes de Python o Node.js en el mismo servidor, el problema se complicaba rápidamente.

Docker resuelve esto de forma elegante: cada aplicación vive en su propio contenedor, con sus propias dependencias, completamente aislada del resto. El servidor puede correr diez aplicaciones con diez entornos diferentes sin que interfieran entre sí. Y cuando necesitas mover una aplicación a otro servidor, la mueves entera, con todo su entorno incluido.

Hoy Docker es el estándar de facto para desplegar aplicaciones en producción. N8N, Outline, Ghost, Nextcloud, Gitea, Grafana, Portainer y cientos de herramientas más se instalan en minutos con Docker frente a horas de configuración manual. Esta guía explica cómo instalar Docker en un VPS Ubuntu y dejarlo listo para producción.


Qué necesitas antes de empezar

Para seguir esta guía necesitas:

Un VPS con Ubuntu 22.04 LTS o 24.04 LTS. Ambas versiones son compatibles con Docker y tienen soporte a largo plazo. Si tienes otra distribución Linux, el proceso es similar pero los comandos de instalación varían.

Acceso root o usuario con privilegios sudo. Si acabas de contratar el VPS, tendrás acceso root por defecto.

Conexión SSH al servidor. Si no has configurado SSH antes, necesitas el usuario, la contraseña o la clave SSH que te proporcionó el proveedor al crear el VPS.

Un dominio apuntando al VPS si planeas exponer aplicaciones en internet. No es obligatorio para la instalación de Docker, pero sí para usar las aplicaciones desde fuera.


Paso 1: Conecta al VPS por SSH

Abre el terminal en tu ordenador y conecta al VPS con el siguiente comando, sustituyendo la IP por la de tu servidor:

bash

ssh root@IP_DEL_SERVIDOR

Si usas clave SSH en lugar de contraseña:

bash

ssh -i ruta/a/tu/clave.pem root@IP_DEL_SERVIDOR

Una vez conectado verás el prompt del servidor. A partir de aquí todos los comandos se ejecutan en el VPS, no en tu ordenador.


Paso 2: Actualiza el sistema

Antes de instalar cualquier cosa, actualiza los paquetes del sistema para asegurarte de que tienes las últimas versiones de seguridad:

bash

apt update && apt upgrade -y

Este comando puede tardar unos minutos dependiendo de cuántas actualizaciones haya pendientes. Cuando termine, el sistema está listo para la instalación.


Paso 3: Instala Docker

La forma recomendada de instalar Docker en Ubuntu es usando el script oficial de Docker. Es el método más rápido y garantiza que instalas la versión más reciente directamente desde los repositorios de Docker, no la versión más antigua que suele estar en los repositorios de Ubuntu.

bash

curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh

El script detecta automáticamente la distribución y versión de Ubuntu, añade el repositorio oficial de Docker e instala Docker Engine, Docker CLI y el plugin de Docker Compose.

Cuando termine, verifica que Docker se ha instalado correctamente:

bash

docker --version

Deberías ver algo como Docker version 26.x.x, build xxxxxxx.


Paso 4: Verifica que Docker funciona

Ejecuta el contenedor de prueba oficial de Docker para confirmar que todo funciona:

bash

docker run hello-world

Si Docker está correctamente instalado, verás un mensaje que empieza con «Hello from Docker!». Ese mensaje confirma que Docker puede descargar imágenes, crear contenedores y ejecutarlos sin problemas.


Paso 5: Instala Docker Compose

Docker Compose permite definir y gestionar aplicaciones con múltiples contenedores usando un archivo YAML. Es imprescindible para la mayoría de aplicaciones modernas que usan más de un servicio (por ejemplo, una aplicación web más su base de datos).

En las versiones recientes de Docker, Compose viene incluido como plugin. Verifica que está disponible:

bash

docker compose version

Si el comando devuelve una versión, ya lo tienes instalado. Si no, instálalo manualmente:

bash

apt install docker-compose-plugin -y

Paso 6: Configura Docker para que arranque con el sistema

Por defecto, Docker arranca automáticamente con el servidor. Verifica que el servicio está habilitado:

bash

systemctl is-enabled docker

Si devuelve enabled, está configurado correctamente. Si no:

bash

systemctl enable docker
systemctl start docker

Esto garantiza que Docker y todos los contenedores configurados para reiniciarse automáticamente volverán a estar operativos después de un reinicio del servidor.


Paso 7: Crea un usuario no root para Docker (recomendado)

Por seguridad, es mejor no usar Docker directamente como root en el día a día. Puedes añadir tu usuario al grupo docker para ejecutar comandos Docker sin sudo:

bash

usermod -aG docker tu_usuario

Sustituye tu_usuario por el nombre del usuario que quieras usar. Después cierra la sesión SSH y vuelve a conectarte para que el cambio tenga efecto.

A partir de ahora puedes ejecutar comandos Docker sin sudo con ese usuario.


Paso 8: Despliega tu primera aplicación con Docker

Con Docker instalado puedes desplegar cualquier aplicación en minutos. Un ejemplo práctico: levantar Nginx como servidor web de prueba.

bash

docker run -d -p 80:80 --name mi-nginx nginx

Este comando descarga la imagen oficial de Nginx, crea un contenedor llamado mi-nginx, lo ejecuta en segundo plano (-d) y mapea el puerto 80 del contenedor al puerto 80 del servidor (-p 80:80).

Abre el navegador y escribe la IP de tu VPS. Deberías ver la página de bienvenida de Nginx. Con un solo comando tienes un servidor web funcionando.

Para detener y eliminar el contenedor:

bash

docker stop mi-nginx
docker rm mi-nginx

Gestionar contenedores: comandos esenciales

Estos son los comandos de Docker que usarás con más frecuencia en el día a día:

Ver los contenedores en ejecución:

bash

docker ps

Ver todos los contenedores, incluidos los detenidos:

bash

docker ps -a

Ver los logs de un contenedor:

bash

docker logs nombre_contenedor

Reiniciar un contenedor:

bash

docker restart nombre_contenedor

Ver el uso de recursos de los contenedores activos:

bash

docker stats

Eliminar imágenes y contenedores sin usar para liberar espacio:

bash

docker system prune -a

Instalar aplicaciones con Docker Compose

La mayoría de aplicaciones que se despliegan en VPS usan Docker Compose para definir todos sus servicios en un archivo docker-compose.yml. El flujo es siempre el mismo:

Crea un directorio para la aplicación:

bash

mkdir /opt/mi-aplicacion
cd /opt/mi-aplicacion

Crea el archivo docker-compose.yml con la configuración de la aplicación. Por ejemplo, para N8N:

yaml

version: '3.8'
services:
  n8n:
    image: n8nio/n8n
    restart: always
    ports:
      - "5678:5678"
    environment:
      - N8N_HOST=tudominio.es
      - WEBHOOK_URL=https://tudominio.es/
    volumes:
      - n8n_data:/home/node/.n8n

volumes:
  n8n_data:

Levanta la aplicación:

bash

docker compose up -d

Docker descarga las imágenes necesarias, crea los contenedores y los pone en marcha. La aplicación está disponible en el puerto definido.

Para actualizarla a la última versión:

bash

docker compose pull
docker compose up -d

Qué VPS necesitas para Docker

Docker en sí consume pocos recursos, pero las aplicaciones que corren dentro de los contenedores sí los consumen. La regla general es dimensionar el VPS según las aplicaciones que vayas a alojar, no según Docker.

Para un uso básico —una o dos aplicaciones ligeras como N8N, Ghost o Gitea— un VPS con 2 núcleos y 4 GB de RAM es suficiente. Para aplicaciones más pesadas o varios servicios simultáneos, 4 núcleos y 8 GB es un punto de partida más cómodo.

Los VPS de BlumHost vienen con Ubuntu disponible como sistema operativo y se entregan en minutos. Puedes seguir esta guía desde el primer acceso SSH sin ninguna configuración previa adicional. Si necesitas más potencia, los VPS optimizados con CPU Ryzen y RAM DDR5 son la opción para cargas de trabajo más exigentes.


Preguntas frecuentes sobre Docker en VPS

¿Docker funciona en todos los planes de VPS de BlumHost? Sí. Docker funciona en cualquier VPS con Linux y acceso root. Todos los planes de VPS de BlumHost permiten instalar Docker sin restricciones.

¿Puedo usar Docker junto con un panel de control como cPanel o Plesk? No es recomendable mezclar Docker con cPanel en el mismo servidor. cPanel gestiona el servidor de forma global y puede entrar en conflicto con los contenedores Docker. Si quieres usar Docker, lo más limpio es un VPS sin panel de control gestionado manualmente.

¿Qué pasa con los datos si el contenedor se reinicia? Los datos dentro de un contenedor se pierden si el contenedor se elimina. Por eso es imprescindible usar volúmenes de Docker para persistir los datos importantes fuera del contenedor, como se muestra en el ejemplo del docker-compose.yml.

¿Docker afecta a la seguridad del servidor? Docker tiene su propio modelo de seguridad basado en el aislamiento de contenedores. Sin embargo, no sustituye a las buenas prácticas de seguridad del servidor: mantener el sistema actualizado, usar autenticación SSH con clave, configurar un firewall y no exponer puertos innecesarios. Puedes consultar la guía de seguridad para VPS Linux de BlumHost para los pasos básicos recomendados.

¿Puedo instalar Portainer para gestionar Docker con interfaz gráfica? Sí. Portainer es una interfaz web para gestionar Docker visualmente. Se instala como un contenedor más y es especialmente útil si prefieres no trabajar siempre desde la terminal.

Miguel Taboada

Ingeniero en Telecomunicaciones e Informática. Creé BlumHost para ofrecer un hosting distinto a los demás, que ofrezca la mejor atención al cliente, al menor precio y con la mejor calidad.

Ver todas las entradas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *