Cómo instalar Docker en Ubuntu y ejecutar un contenedor Ubuntu (Guía paso a paso)

目次

1. Qué es Docker y su relación con Ubuntu

Docker es una tecnología de virtualización que empaqueta entornos de ejecución de aplicaciones en unidades llamadas “contenedores”, permitiendo que se ejecuten de forma consistente en diferentes servidores y equipos. A diferencia de las máquinas virtuales tradicionales, Docker ejecuta los contenedores directamente sobre el sistema operativo host, lo que lo hace significativamente más ligero y rápido.

Los sistemas operativos basados en Linux, como Ubuntu, están especialmente bien adaptados para Docker, por lo que Docker es ampliamente usado tanto por empresas como por desarrolladores individuales y administradores de servidores. Esto se debe a que Ubuntu es de código abierto, está muy extendido en entornos de servidor, es fácil de gestionar con sistemas de paquetes y cuenta con una amplia documentación oficial.

Al usar Docker, puedes eliminar problemas comunes como “funciona en mi máquina pero no en el servidor”. Ya sea en un PC de desarrollo o en un servidor de producción, los contenedores Docker te permiten reproducir exactamente el mismo entorno en cualquier lugar. Ubuntu también está soportado oficialmente por Docker, por lo que existen abundantes guías de instalación y recursos de solución de problemas.

En este artículo explicaremos claramente cómo instalar Docker en Ubuntu y cómo iniciar un contenedor Ubuntu. Tanto si eres nuevo en Docker como si ya tienes experiencia, esta guía te ayudará a reforzar tus conocimientos básicos.

2. Entorno requerido y prerrequisitos

Antes de usar Docker en Ubuntu, es necesario cumplir varios prerrequisitos y verificaciones. Esta sección resume el entorno requerido y los puntos importantes que debes confirmar con antelación para garantizar una instalación sin contratiempos.

Versión de Ubuntu

Docker se recomienda para Ubuntu 18.04 LTS o versiones posteriores. Las versiones de Soporte a Largo Plazo (LTS) como Ubuntu 20.04 LTS, Ubuntu 22.04 LTS y Ubuntu 24.04 LTS están especialmente bien soportadas. Las versiones más antiguas pueden presentar problemas de dependencias o paquetes, por lo que se aconseja usar la última versión LTS.

Requisitos del sistema

Aunque Docker es liviano, ejecutar varios contenedores o usarlo para desarrollo y pruebas requiere recursos de sistema suficientes. Se recomiendan las siguientes especificaciones mínimas:

  • Ubuntu de 64 bits (no se soporta 32 bits)
  • CPU: 2 núcleos o más (recomendado)
  • Memoria: al menos 2 GB (se recomiendan 4 GB o más)
  • Espacio libre en disco: al menos 10 GB

Conexión a Internet

Se necesita una conexión a Internet para instalar Docker y descargar imágenes. La configuración inicial puede implicar la descarga de grandes cantidades de datos, por lo que se recomienda una conexión estable.

Privilegios de usuario

Instalar Docker y gestionar la configuración del sistema requiere privilegios sudo (administrador). Si solo dispones de permisos de usuario estándar, solicita acceso temporal o asistencia a un administrador.

Eliminación de paquetes Docker antiguos

Si previamente instalaste paquetes como docker o docker.io de forma manual, se recomienda desinstalarlos para evitar conflictos.

sudo apt-get remove docker docker-engine docker.io containerd runc

Esto evita posibles problemas causados por paquetes heredados en conflicto.

Resumen

Una vez confirmados los prerrequisitos en esta sección, procede con los pasos de instalación y configuración en los capítulos siguientes.
Con la preparación adecuada, instalar Docker en Ubuntu es un proceso muy fluido.

3. Instalación y configuración de Docker Engine

Esta sección explica cómo instalar Docker Engine en Ubuntu y realizar la configuración básica. Usar el repositorio oficial de Docker garantiza que obtengas la última versión estable.

Añadir el repositorio oficial y preparación

Primero, agrega el repositorio oficial de Docker a apt. Todos los pasos se ejecutan en la terminal.

  1. Instalar los paquetes requeridos
    sudo apt-get update
    sudo apt-get install \
        ca-certificates \
        curl \
        gnupg \
        lsb-release
    
  1. Añadir la clave GPG
    sudo mkdir -p /etc/apt/keyrings
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
    
  1. Añadir el repositorio de Docker
    echo \
      "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
      $(lsb_release -cs) stable" | \
      sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    

Instalación del motor Docker

Después de añadir el repositorio, instala el motor Docker.

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

Una vez completada la instalación, verifica la versión:

docker --version

Si ves una salida como Docker version 25.0.3, la instalación fue exitosa.

Acerca de Docker Desktop (Opcional)

En Ubuntu, el motor Docker suele ser suficiente. Docker Desktop para Linux también está disponible si necesitas una interfaz gráfica, pero para flujos de trabajo basados en la línea de comandos, el motor Docker por sí solo es más que suficiente.

Solución de problemas de instalación

Si encuentras errores como “paquete no encontrado”, verifica la configuración del repositorio y la configuración de la clave GPG. Los conflictos con paquetes Docker antiguos también pueden causar problemas, así que revisa los pasos de desinstalación si es necesario.

4. Usar Docker sin sudo

Por defecto, los comandos de Docker requieren privilegios sudo. Pedir sudo para cada comando es incómodo y puede ser arriesgado si se escribe mal un comando. El enfoque recomendado es añadir tu cuenta de usuario al grupo docker, lo que permite usar Docker de forma segura sin sudo.

Añadir un usuario al grupo docker

  1. Añade el usuario actual al grupo docker
    sudo usermod -aG docker $USER
    
  1. Aplica los cambios

Cierra sesión y vuelve a iniciarla para aplicar la nueva pertenencia al grupo. Alternativamente, puedes aplicarlo inmediatamente usando:

newgrp docker
  1. Verifica
    docker version
    

Notas de seguridad

Los usuarios del grupo docker tienen privilegios elevados. En entornos multiusuario, gestiona la pertenencia al grupo docker con cuidado. Para uso personal o de desarrollo, generalmente no es un problema.

5. Iniciar el daemon de Docker y habilitar el inicio automático

Docker se ejecuta como un servicio en segundo plano llamado daemon de Docker (dockerd). Aunque normalmente se inicia automáticamente después de la instalación, es importante entender cómo gestionarlo.

Iniciar, detener y reiniciar Docker

sudo systemctl start docker
sudo systemctl stop docker
sudo systemctl restart docker
sudo systemctl status docker

Habilitar o deshabilitar el inicio automático al arrancar

sudo systemctl enable docker
sudo systemctl disable docker

Verificar registros

journalctl -u docker

6. Iniciar un contenedor Ubuntu

Esta sección explica cómo iniciar realmente un contenedor Ubuntu en Docker.

Descargar la imagen Ubuntu

docker pull ubuntu:22.04

Ejecutar un contenedor Ubuntu

docker run -it --name myubuntu ubuntu:22.04 /bin/bash

Ejecutar en segundo plano

docker run -d --name myubuntu ubuntu:22.04 tail -f /dev/null

Detener y reiniciar contenedores

docker stop myubuntu
docker start myubuntu

Verificar el estado del contenedor

docker ps
docker ps -a

7. Comandos esenciales de Docker para la gestión de contenedores

Esta sección resume los comandos Docker más usados para operaciones diarias.

Listado de contenedores

docker ps
docker ps -a

Iniciar, detener, reiniciar

docker start [container]
docker stop [container]
docker restart [container]

Acceder a contenedores

docker exec -it [container] /bin/bash

Eliminar contenedores e imágenes

docker rm [container]
docker rm -f [container]
docker images
docker rmi [image]

Registros y uso de disco

docker logs [container]
docker system df

8. Solución de problemas y preguntas frecuentes

Esta sección cubre problemas comunes de Docker y cómo resolverlos.

No se puede conectar al daemon de Docker

Asegúrate de que Docker esté en ejecución y de que tu usuario tenga los permisos adecuados.

Conflictos de paquetes

sudo apt-get remove docker docker-engine docker.io containerd runc

Fallos al iniciar contenedores

Verifique los nombres de las imágenes, la memoria disponible y el espacio en disco.

9. Resumen y próximos pasos

Este artículo cubrió la instalación de Docker en Ubuntu y la ejecución de contenedores Ubuntu, desde conceptos básicos hasta el uso práctico.

Próximos pasos

  • Crear imágenes personalizadas con Dockerfile
  • Gestionar múltiples contenedores con Docker Compose
  • Utilizar volúmenes y redes
  • Explorar la orquestación de contenedores con Kubernetes

10. Preguntas frecuentes

Esta sección responde a preguntas frecuentes relacionadas con Docker en Ubuntu.

¿Se puede usar Docker tanto en Ubuntu Desktop como en Server?

Sí. Ubuntu Server suele preferirse para producción debido a su menor consumo de recursos.

¿Se requiere Docker Desktop?

No. Docker Engine por sí solo es suficiente en Ubuntu.

¿Qué es el modo sin privilegios (rootless)?

El modo sin privilegios permite que Docker se ejecute sin privilegios de root, mejorando la seguridad con algunas limitaciones.

¿Cómo persisto datos?

docker run -v /host/path:/container/path ubuntu:22.04

¿Cómo inicio automáticamente los contenedores?

docker run --restart=unless-stopped -d ubuntu:22.04