Cómo instalar y usar Docker en Ubuntu: Guía paso a paso para principiantes

目次

1. ¿Qué es Docker? Relación con Ubuntu

Docker es una de las tecnologías de virtualización que empaqueta el entorno de ejecución de una aplicación en unidades llamadas “contenedores”, permitiendo que se ejecute de la misma manera en cualquier servidor o computadora. A diferencia de las máquinas virtuales tradicionales, los contenedores se inician directamente sobre el sistema operativo anfitrión, lo que permite construir entornos más ligeros y rápidos.

En particular, los sistemas operativos basados en Linux como Ubuntu tienen una gran afinidad con Docker y son utilizados tanto por empresas como por usuarios individuales, incluyendo a muchos desarrolladores y administradores de servidores. Las razones incluyen que Ubuntu es de código abierto, ampliamente adoptado para servidores, fácil de gestionar mediante paquetes y cuenta con un soporte oficial sólido.

Con Docker, por ejemplo, puedes liberarte del problema de “funciona en un entorno pero no en otro”. Ya sea en tu computadora de desarrollo o en el servidor de producción, los contenedores de Docker permiten recrear fácilmente “el mismo entorno en cualquier lugar”. Además, Ubuntu está oficialmente soportado por Docker, por lo que la documentación y las guías de instalación son abundantes.

En este artículo explicaremos de manera sencilla los pasos para “instalar Docker en Ubuntu y ejecutar un contenedor de Ubuntu”. Tanto si es tu primera vez usando Docker como si ya lo has utilizado y deseas repasar lo básico, este contenido te será útil.

年収訴求

2. Requisitos y condiciones previas

Para usar Docker en Ubuntu, se necesitan algunos requisitos previos y preparativos. Para asegurar una instalación y ejecución fluida, resumimos aquí los puntos que conviene verificar de antemano.

Sobre la versión de Ubuntu

Se recomienda usar Docker a partir de Ubuntu 18.04 LTS. Las versiones con mejor soporte son “Ubuntu 20.04 LTS”, “Ubuntu 22.04 LTS” y “Ubuntu 24.04 LTS”. Si usas versiones antiguas, pueden surgir problemas con paquetes o dependencias necesarios para instalar Docker, por lo que se aconseja usar la última versión LTS disponible.

Requisitos del sistema

Aunque Docker es una tecnología de contenedores ligera, si vas a ejecutar varios contenedores o usarlos para desarrollo y pruebas, se requieren ciertos recursos. Recomendamos al menos las siguientes condiciones:

  • Ubuntu de 64 bits instalado (no compatible con 32 bits)
  • CPU: se recomiendan 2 núcleos o más
  • Memoria: al menos 2 GB (4 GB o más es ideal)
  • Espacio libre en disco: mínimo 10 GB

Conexión a Internet

Para instalar Docker y descargar imágenes es imprescindible contar con conexión a Internet. Especialmente la primera vez se pueden descargar grandes volúmenes de datos, por lo que es recomendable usar una conexión estable.

Sobre permisos de usuario

Para instalar Docker y administrarlo se necesitan permisos de administrador (“sudo”). Si solo tienes permisos de usuario estándar, pide acceso al administrador o solicita permisos temporales.

Eliminación de paquetes antiguos de Docker

Si en el pasado instalaste manualmente paquetes como “docker” o “docker.io”, se recomienda desinstalarlos para evitar conflictos o fallos.

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

De esta forma se evitan problemas derivados de la coexistencia de paquetes antiguos.

Resumen

Revisa los puntos anteriores y confirma que tu entorno cumple los requisitos antes de continuar con los pasos de instalación y configuración. Si todo está preparado, la instalación de Docker será muy fluida.

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

En esta sección explicamos cómo instalar Docker Engine en Ubuntu y realizar la configuración básica. Usando el repositorio oficial puedes instalar la versión más reciente y estable de Docker.

Adición del repositorio oficial y preparación previa

Primero, agrega el repositorio oficial de Docker a apt. Todo el trabajo se hace desde la terminal. Sigue los pasos a continuación:

  1. Instalar los paquetes necesarios
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. Agregar 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 de Docker Engine

Una vez agregado el repositorio, instala el paquete principal de Docker Engine.

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

Cuando termine la instalación, verifica la versión de Docker con el siguiente comando:

docker --version

Si aparece algo como “Docker version 25.0.3, build 1234567”, significa que la instalación fue exitosa.

Sobre Docker Desktop (información adicional)

En Ubuntu se utiliza principalmente “Docker Engine”, pero recientemente también está disponible “Docker Desktop for Linux”. Si necesitas una interfaz gráfica de administración, Docker Desktop puede ser una opción. Sin embargo, si trabajas principalmente con CLI (línea de comandos), Docker Engine es suficiente.

En caso de problemas

Si aparece un error como “paquete no encontrado”, revisa la configuración del repositorio y la clave GPG. Además, si todavía tienes instalados paquetes antiguos de Docker, pueden surgir conflictos. En ese caso, revisa de nuevo los pasos de desinstalación del capítulo 2.

4. Usar Docker sin necesidad de sudo

Justo después de la instalación, Docker solo puede ejecutarse con permisos de administrador (sudo). Tener que escribir sudo en cada comando no solo es tedioso, sino que también aumenta el riesgo de cambios accidentales en el sistema si se comete un error.
La solución recomendada es agregar tu usuario al “grupo docker”. Así podrás usar Docker sin sudo de forma más cómoda y segura.

Cómo agregar el usuario al grupo docker

  1. Agregar el usuario al grupo docker
    Ejecuta el siguiente comando para agregar tu usuario actual al grupo docker.
    ($USER se sustituye automáticamente por tu nombre de usuario actual)
sudo usermod -aG docker $USER
  1. Aplicar la configuración
    Para que los cambios tengan efecto, es necesario cerrar sesión y volver a iniciarla.
    El método más sencillo es cerrar sesión e iniciar sesión nuevamente.

Si quieres aplicarlo inmediatamente, también puedes ejecutar el siguiente comando:

newgrp docker
  1. Verificación
    Comprueba si ahora puedes ejecutar comandos Docker sin sudo.
    Por ejemplo, prueba con el siguiente comando:
docker version

Nota sobre seguridad

Al agregar un usuario al grupo docker, este obtiene permisos elevados. En entornos multiusuario se debe tener cuidado con la administración del grupo docker.
En entornos personales o de desarrollo no suele ser un problema, pero en servidores corporativos es mejor seguir la política de seguridad establecida.

Una vez realizado este paso, usar Docker será mucho más cómodo.

5. Inicio y configuración de inicio automático del demonio de Docker

Docker funciona como un proceso en segundo plano llamado “demonio” (dockerd).
Tras la instalación, el demonio de Docker se configura para iniciarse automáticamente, pero también puedes iniciarlo o detenerlo manualmente, así como cambiar si se inicia o no al reiniciar el sistema. Aquí explicamos cómo gestionarlo en Ubuntu.

Iniciar, detener y reiniciar el demonio de Docker

Puedes gestionar el demonio de Docker fácilmente con el comando systemctl.

  • Iniciar
sudo systemctl start docker
  • Detener
sudo systemctl stop docker
  • Reiniciar
sudo systemctl restart docker
  • Verificar el estado
sudo systemctl status docker

Este comando muestra el estado actual y posibles errores.

Configuración de inicio automático (habilitar/deshabilitar al arrancar)

En Ubuntu puedes configurar Docker para que se inicie automáticamente al reiniciar el servidor.
Normalmente esto se activa durante la instalación, pero conviene saber cómo verificarlo y cambiarlo.

  • Habilitar inicio automático
sudo systemctl enable docker
  • Deshabilitar inicio automático
sudo systemctl disable docker

Esto último es útil si quieres iniciar Docker manualmente en entornos de desarrollo o pruebas.

Nota: también se puede usar el comando service

En versiones antiguas de Ubuntu o si estás acostumbrado, puedes usar comandos como service docker start. Sin embargo, actualmente se recomienda systemctl.

Puntos de verificación en caso de error

  • Si el demonio de Docker no arranca, revisa sudo systemctl status docker.
  • Pueden faltar paquetes de dependencias o la configuración del kernel puede ser incorrecta.
  • También puedes consultar los registros con journalctl -u docker.

Con esto ya dominas lo básico sobre la gestión del demonio de Docker en Ubuntu.

6. Cómo iniciar un contenedor de Ubuntu

A continuación explicamos cómo iniciar un “contenedor de Ubuntu” en tu sistema.
Después de instalar Docker no se ejecuta ningún contenedor automáticamente. Lo habitual es obtener una “imagen de contenedor” del sistema operativo o aplicación deseada y luego ejecutarla. Aquí usaremos la imagen oficial de Ubuntu como ejemplo.

1. Descargar la imagen de Ubuntu (pull)

Primero descarga la imagen de Ubuntu desde Docker Hub (el repositorio oficial de imágenes).
Puedes especificar una versión como “22.04” o dejarlo en “latest”.

docker pull ubuntu:22.04

O bien:

docker pull ubuntu

Ambos funcionan, pero se recomienda especificar la versión explícitamente.

2. Iniciar un nuevo contenedor de Ubuntu (run)

Con la imagen descargada, inicia un contenedor de Ubuntu.
El ejemplo más básico es:

docker run -it --name myubuntu ubuntu:22.04 /bin/bash
  • -it: modo interactivo (para usar la shell)
  • --name myubuntu: asigna un nombre al contenedor (opcional)
  • ubuntu:22.04: imagen que se usará
  • /bin/bash: comando que se ejecuta al iniciar (bash shell)

Con este comando entrarás en el entorno de Ubuntu dentro del contenedor con bash.

3. Ejecución en segundo plano

Si necesitas que el contenedor permanezca ejecutándose en segundo plano, usa la opción -d:

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

Con este ejemplo, el contenedor se mantiene activo sin ejecutar nada en particular.

4. Detener y reiniciar un contenedor

  • Para detener el contenedor:
docker stop myubuntu
  • Para reiniciarlo:
docker start myubuntu

5. Verificar el estado

  • Listar contenedores en ejecución
docker ps
  • Listar todos los contenedores (incluidos los detenidos)
docker ps -a

Resumen

En este capítulo explicamos el flujo completo: “descargar la imagen de Ubuntu” → “iniciar el contenedor” → “gestionar lo básico”.
Probando estos comandos en tu sistema, verás lo útil que puede ser Docker.

7. Resumen de comandos básicos para la gestión de contenedores

El atractivo de Docker radica en su flexibilidad para “crear, detener y eliminar contenedores fácilmente”.
En este capítulo reunimos los comandos básicos que se usan con frecuencia en la gestión y operación de contenedores Ubuntu.
Todos son muy utilizados en la práctica, así que conviene familiarizarse repitiendo los ejercicios.

Listar contenedores

  • Contenedores en ejecución
docker ps
  • Todos los contenedores, incluidos los detenidos
docker ps -a

Iniciar, detener y reiniciar contenedores

  • Iniciar un contenedor
docker start [nombre o ID del contenedor]
  • Detener un contenedor
docker stop [nombre o ID del contenedor]
  • Reiniciar un contenedor
docker restart [nombre o ID del contenedor]

Conectarse y operar dentro de un contenedor

  • Ejecutar comandos en un contenedor en ejecución (exec)
docker exec -it [nombre o ID del contenedor] /bin/bash

Eliminar contenedores

  • Eliminar un contenedor
docker rm [nombre o ID del contenedor]
  • Eliminar forzadamente (incluso si está en ejecución)
docker rm -f [nombre o ID del contenedor]

Eliminar imágenes

  • Ver imágenes no utilizadas
docker images
  • Eliminar una imagen
docker rmi [nombre o ID de la imagen]

Otros comandos útiles

  • Ver registros
docker logs [nombre o ID del contenedor]
  • Ver el uso de disco
docker system df

Puntos clave

  • Conociendo comandos básicos como docker ps, docker start, docker stop y docker exec, podrás operar y solucionar problemas de manera fluida en tu día a día.
  • Elimina contenedores e imágenes innecesarios regularmente para mantener el uso de disco bajo control.

8. Resolución de problemas / Preguntas frecuentes

Al usar Docker y contenedores Ubuntu, pueden aparecer errores inesperados. En este capítulo abordamos los problemas más comunes relacionados con “ubuntu docker start” y sus soluciones.

Problemas comunes y cómo resolverlos

1. Error “Cannot connect to the Docker daemon”

Este error ocurre cuando el demonio de Docker (dockerd) no está en ejecución o cuando hay problemas de permisos.

  • Solución:
  1. Verifica si el demonio está en ejecución
    sudo systemctl status docker
  2. Si no lo está, inícialo
    sudo systemctl start docker
  3. Si necesitas permisos, usa sudo o agrega tu usuario al grupo docker como se explicó en el capítulo 4.

2. Conflictos con paquetes antiguos de Docker

Si instalaste paquetes como “docker”, “docker.io” o “docker-engine” en el pasado, pueden generarse conflictos.

  • Solución:
    Desinstala los paquetes antiguos.
  sudo apt-get remove docker docker-engine docker.io containerd runc

3. Fallo al iniciar un contenedor

Puede deberse a errores en el nombre de la imagen, comandos mal escritos o falta de recursos (memoria o disco).

  • Solución:
  • Revisa la sintaxis del comando o nombre de la imagen
  • Confirma la imagen con docker images
  • Verifica espacio en disco y memoria

4. Error de conflicto de puertos

Si intentas iniciar un contenedor en un puerto ya en uso, se generará un error.

  • Solución:
  • Usa otro número de puerto
  • Detén el proceso que usa ese puerto

5. Precauciones sobre el modo rootless

Docker puede ejecutarse en “modo rootless” (sin permisos root), pero tiene limitaciones y depende de la versión. Revisa la documentación oficial y los mensajes de error antes de usarlo.

Lista práctica de comprobación

  • Usa docker ps -a para ver el estado de los contenedores
  • Usa docker logs [nombre] para revisar los errores
  • Consulta journalctl -u docker para ver los registros generales de Docker

Puntos clave

La mayoría de problemas con Docker provienen de “permisos”, “conflictos de versiones” o “errores de configuración”.
Lee con calma los mensajes de error y, si es necesario, reinstala o revisa la configuración.

9. Resumen y próximos pasos

En este artículo hemos explicado de principio a fin cómo “instalar Docker en Ubuntu y ejecutar un contenedor de Ubuntu”.
A continuación, repasamos los puntos principales y compartimos algunas ideas para seguir avanzando.

Repaso de lo aprendido

  • Descripción general y ventajas de Docker
    Gran compatibilidad con Ubuntu y la posibilidad de recrear rápidamente el mismo entorno en cualquier lugar.
  • Preparativos y requisitos previos
    Versión de Ubuntu, requisitos de hardware, permisos y eliminación de paquetes antiguos.
  • Método de instalación de Docker Engine
    Uso del repositorio oficial para instalar la versión más reciente y segura.
  • Operar sin sudo y gestión del demonio
    Añadir usuarios al grupo docker y gestionar el inicio automático con systemctl.
  • Ejecución y administración de contenedores Ubuntu
    Creación, control y comandos básicos de gestión de contenedores.
  • Problemas frecuentes y soluciones
    Errores de permisos, conflictos de versiones y cómo resolverlos.

Próximos pasos y usos avanzados

El primer paso para dominar Docker es familiarizarse con el inicio de contenedores y comandos básicos. Una vez lo domines, prueba con usos más avanzados:

  • Construir contenedores personalizados con Dockerfile
    Crea imágenes adaptadas a tus necesidades, no solo las oficiales.
  • Usar Docker Compose para múltiples contenedores
    Levanta y administra fácilmente servicios como “web + base de datos”.
  • Gestionar volúmenes y redes
    Permite persistir datos y controlar la comunicación entre contenedores.
  • Aprender Kubernetes u orquestadores
    Ideal para operaciones en la nube y despliegues a gran escala.

Para terminar

Docker no solo sirve para desarrollo, sino también para servidores, despliegues de servicios y aprendizaje.
Ponlo en práctica al menos una vez para descubrir lo útil y potente que es.
Si surge alguna duda, consulta la documentación oficial o participa en comunidades técnicas: la mejor forma de mejorar es experimentando.

10. FAQ [Preguntas frecuentes]

En esta sección reunimos preguntas comunes relacionadas con “ubuntu docker start” y el contenido del artículo.
Se centra en dudas típicas de principiantes y en consultas frecuentes en entornos reales.

Q1. ¿Docker funciona tanto en Ubuntu Desktop como en Ubuntu Server?

A.
Sí, se puede usar en ambos. Los comandos son básicamente los mismos, pero Ubuntu Server suele recomendarse para entornos de producción porque consume menos recursos al no incluir interfaz gráfica.

Q2. ¿Es necesario Docker Desktop en Ubuntu?

A.
No, en Ubuntu basta con “Docker Engine”. Docker Desktop añade una interfaz gráfica, pero en Linux es más común y estable trabajar con la línea de comandos. Si deseas un entorno visual para aprendizaje, puedes probar Docker Desktop, pero no es obligatorio.

Q3. ¿Qué es el modo rootless?

A.
Es un modo que permite ejecutar Docker sin permisos root. Mejora la seguridad en entornos multiusuario, aunque tiene algunas limitaciones y no todas las funciones están disponibles. Se debe evaluar según el caso.

Q4. ¿Cómo se configura almacenamiento persistente en un contenedor?

A.
Usa “volúmenes” o “bind mounts” para que los datos no se pierdan al eliminar el contenedor.

Ejemplo:

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

Esto vincula un directorio del host con uno dentro del contenedor.

Q5. ¿Cómo configurar el inicio automático de contenedores o del demonio?

A.
El demonio puede configurarse con sudo systemctl enable docker (ver capítulo 5).
Para iniciar un contenedor automáticamente al arrancar el servidor, añade la opción --restart=unless-stopped al crear el contenedor.

Ejemplo:

docker run --restart=unless-stopped -d --name myubuntu ubuntu:22.04 tail -f /dev/null

Q6. ¿Puedo ejecutar imágenes de otros sistemas operativos en Ubuntu?

A.
Sí, siempre que sean imágenes de Linux y de la misma arquitectura (por ejemplo x86_64). Imágenes específicas de Windows u otras arquitecturas no funcionarán.

Q7. ¿Cómo limpiar imágenes y contenedores que ya no necesito?

A.
Puedes usar docker rm y docker rmi para eliminarlos manualmente. Para limpiar en bloque:

  • Eliminar todos los contenedores detenidos
docker container prune
  • Eliminar imágenes no usadas
docker image prune
  • Limpieza completa
docker system prune

Q8. ¿Dónde encontrar soporte o documentación?

A.
En la documentación oficial de Docker, y en comunidades como Qiita o Stack Overflow. También es útil buscar directamente los mensajes de error en Google.

Q9. ¿Cómo aprender a usar Docker Compose?

A.
Docker Compose es una herramienta para gestionar múltiples contenedores de forma conjunta.
Se recomienda aprender revisando la documentación oficial, ejemplos de archivos docker-compose.yml y probando en la práctica.

Q10. ¿Docker funciona en la última versión de Ubuntu (ej. 24.04)?

A.
Sí, Docker soporta oficialmente las últimas versiones LTS de Ubuntu. Usando el repositorio oficial tendrás acceso a paquetes actualizados y podrás trabajar de forma estable.

年収訴求