Guía completa para instalar y configurar Docker en Ubuntu Server

Última actualización: 14/11/2026
Autor: Isaac
  • Instalación mediante el repositorio oficial de APT para garantizar actualizaciones seguras y estables.
  • Configuración de permisos de usuario para operar el motor de Docker sin requerir privilegios de root.
  • Optimización del rendimiento del sistema mediante la limpieza de recursos no utilizados y gestión de AppArmor.

Vista en primer plano de racks de servidores en un centro de datos moderno, representando la infraestructura donde se instala Ubuntu Server.

Si te dedicas al desarrollo de software, eres administrador de sistemas o trabajas como SRE, sabrás que Docker se ha vuelto una herramienta absolutamente imprescindible en el ecosistema tecnológico actual. Esta plataforma nos permite empaquetar aplicaciones con todas sus dependencias en contenedores, evitando el clásico problema de «en mi máquina sí funciona» y facilitando un despliegue limpio y consistente en cualquier servidor.

Configurar este entorno en Ubuntu Server es un proceso bastante directo, pero hay detalles técnicos cruciales que no podemos pasar por alto para que todo ruede sobre ruedas. Desde la limpieza de versiones obsoletas hasta la gestión de permisos para no depender siempre de la cuenta root, vamos a desglosar paso a paso cómo dejar tu servidor a punto para empezar a lanzar contenedores sin complicaciones.

Requisitos previos y preparación del sistema

Administradora de sistemas configurando un servidor con un ordenador portátil en un entorno de centro de datos profesional.

Antes de lanzarnos a escribir comandos, es fundamental asegurarse de que el hardware y el software cumplen con lo necesario. Docker Engine requiere obligatoriamente una versión de 64 bits de Ubuntu (siendo la 24.04 Noble Numbat totalmente compatible) y arquitecturas como x86_64, arm64 o s390x. En cuanto a los recursos, aunque podrías arrancar con 512 MB de RAM, lo más sensato para un entorno real es contar con al menos 2 GB de memoria para evitar cuellos de botella.

Un punto crítico es el cortafuegos. Si utilizas herramientas como ufw o firewalld, debes saber que Docker puede saltarse tus reglas al exponer puertos de contenedores. Además, el sistema debe basarse en iptables-nft o iptables-legacy, ya que las reglas creadas puramente con nft no son compatibles. Para garantizar una instalación limpia, lo primero que debemos hacer es borrar cualquier paquete conflictivo que haya podido venir preinstalado o que hayamos puesto antes, como docker.io, docker-compose o podman-docker, ejecutando una purga completa a través de apt.

  Guía para instalar AMD Vivado Design Suite en Windows y Linux

Métodos de instalación detallados

Primer plano de las manos de un desarrollador escribiendo comandos en el teclado, ilustrando el proceso de instalación de Docker vía terminal.

Existen diversas formas de instalar el motor de Docker, cada una adaptada a diferentes necesidades según el entorno.

Uso del repositorio oficial de APT (Recomendado)

Este es el camino más seguro para entornos de producción, ya que permite actualizaciones sencillas y controladas. El proceso comienza actualizando los índices de paquetes y el sistema con un sudo apt update y upgrade. Posteriormente, instalamos dependencias esenciales como curl y ca-certificates, que permiten que el gestor de paquetes se comunique de forma segura a través de HTTPS.

El siguiente paso es la gestión de la seguridad. Debemos descargar la clave GPG oficial de Docker y guardarla en el anillo de claves del sistema para que Ubuntu pueda verificar que el software no ha sido manipulado. Tras esto, añadimos el repositorio estable a nuestras fuentes de APT. Una vez refrescada la lista de paquetes, instalamos el núcleo del sistema: docker-ce, docker-ce-cli y containerd.io. Para completar el kit, es muy recomendable añadir los plugins de docker-buildx-plugin y docker-compose-plugin, que nos permiten gestionar aplicaciones multi-contenedor de forma mucho más potente.

Otras alternativas de despliegue

Para quienes no pueden usar repositorios, existe la opción de descargar manualmente los archivos .deb desde la web de Docker, seleccionando la arquitectura y versión correspondientes. Por otro lado, para entornos de desarrollo o scripts de automatización, Docker ofrece un script de conveniencia en get.docker.com. Aunque es muy rápido, no se recomienda para producción porque instala las últimas versiones estables sin preguntar y no permite personalizar parámetros críticos, lo que podría provocar actualizaciones mayores inesperadas que rompan tu flujo de trabajo.

Configuración post-instalación y optimización

Pantalla de ordenador mostrando líneas de código de programación resaltadas, representando la configuración técnica de contenedores Docker.

Una vez instalado, el servicio suele arrancar solo, pero es vital ejecutar systemctl enable docker para que el motor se inicie automáticamente tras cada reinicio del servidor. Para comprobar que todo está en orden, el comando más fiable es lanzar la imagen de prueba hello-world; si ves el mensaje de bienvenida, significa que la comunicación entre el cliente y el daemon es perfecta.

  Guía completa sobre los peligros y el uso correcto del usuario root en Linux

Uno de los mayores dolores de cabeza es tener que escribir sudo antes de cada comando. Para solucionar esto, podemos crear un grupo de usuarios llamado docker y añadir nuestro usuario actual a él. Tras cerrar y abrir la sesión, podremos gestionar los contenedores con total libertad. Eso sí, hay que ser conscientes de que esto otorga privilegios muy elevados al usuario, similares a los de root.

Solución de problemas y rendimiento

Estación de trabajo con monitor junto a racks de servidores, simbolizando la gestión y el control de Docker en un servidor remoto.

Si notas que la extracción de imágenes es lenta o los contenedores no responden con agilidad, lo primero es revisar el almacenamiento. Herramientas como docker system df nos permiten ver cuánto espacio están consumiendo las imágenes y volúmenes. Una solución rápida para recuperar rendimiento es ejecutar una limpieza general con docker system prune -a, que borra todo aquello que no se esté utilizando activamente.

En algunos casos, especialmente en Ubuntu, podrías toparte con errores de seguridad relacionados con AppArmor que impiden que el contenedor arranque. Aunque no es recomendable en producción, se puede probar a ejecutar el contenedor con la opción –security-opt apparmor=unconfined para descartar que sea el módulo de seguridad del kernel el que esté bloqueando el proceso.

Tener Docker bien configurado implica haber limpiado versiones viejas, establecido el repositorio oficial, gestionado correctamente las claves GPG y optimizado el acceso del usuario. Al dominar estos pasos, el servidor queda listo para desplegar desde bases de datos sencillas hasta clusters complejos mediante Docker Swarm, asegurando que el ciclo de vida de las aplicaciones sea fluido, escalable y, sobre todo, muy fácil de mantener.

Isaac

Isaac

Redactor apasionado del mundo de los bytes y la tecnología en general. Me encanta compartir mis conocimientos a través de la escritura, y eso es lo que haré en este blog, mostrarte todo lo más interesante sobre gadgets, software, hardware, tendencias tecnológicas, y más. Mi objetivo es ayudarte a navegar por el mundo digital de forma sencilla y entretenida.

  Cómo crear un icono de papelera visible en Ubuntu