Instalar Docker en Ubuntu/Debian y primeros comandos
Dedicados & VPS
1

Instalación de Docker en Ubuntu y Debian

Esta guía muestra cómo instalar Docker Engine en un VPS con Ubuntu 22.04 o Debian 12 usando el repositorio oficial, que es la forma recomendada para recibir actualizaciones estables.

1. Preparar el sistema

Actualiza los paquetes e instala las dependencias necesarias:

sudo apt update
sudo apt install -y ca-certificates curl gnupg lsb-release

2. Agregar la clave GPG y el repositorio

sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \
  sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
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

3. Instalar Docker Engine

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Verifica que el servicio esté activo:

sudo systemctl status docker

4. Usar Docker sin sudo

Por defecto solo root puede ejecutar comandos de Docker. Para usar tu usuario normal, agrégalo al grupo docker y cierra sesión para aplicar los cambios:

sudo usermod -aG docker $USER
newgrp docker

Comandos básicos imprescindibles

docker run

Crea y arranca un contenedor a partir de una imagen. Si la imagen no existe localmente, Docker la descarga del registry:

docker run hello-world
docker run -d -p 8080:80 --name web nginx

El flag -d ejecuta en segundo plano, -p mapea puertos del host al contenedor y --name asigna un nombre legible.

Listar contenedores e imágenes

docker ps              # contenedores en ejecución
docker ps -a           # incluye los detenidos
docker images          # imágenes descargadas

Detener, reiniciar y eliminar

docker stop web
docker start web
docker restart web
docker rm web          # elimina el contenedor (debe estar detenido)
docker rmi nginx       # elimina la imagen

Ver registros y entrar al contenedor

Para revisar la salida de una aplicación dentro del contenedor:

docker logs web
docker logs -f web     # modo follow, como tail -f

Para abrir una shell interactiva dentro de un contenedor en ejecución:

docker exec -it web bash

Si la imagen no tiene bash, usa sh. El flag -it combina modo interactivo con terminal asignada.

Limpieza de recursos

Con el tiempo se acumulan imágenes, contenedores detenidos y redes huérfanas. Limpia todo lo que no esté en uso con:

docker system prune -a

Ten cuidado: este comando borra imágenes no usadas por ningún contenedor activo. Revisa bien antes de confirmar.

Siguientes pasos

Con estos comandos ya puedes levantar servicios comunes como Nginx, Redis, MariaDB o aplicaciones de prueba. En el siguiente artículo aprenderás a construir tus propias imágenes con un Dockerfile.