Docker es una plataforma de software que permite crear, probar e implementar aplicaciones rápidamente mediante el uso de contenedores. Los contenedores permiten empaquetar una aplicación con todas sus dependencias en un paquete estándar, facilitando así su ejecución en cualquier sistema que soporte Docker. Este tutorial aborda cómo instalar Docker en Debian 12, ofreciendo una base sólida para usuarios que deseen explorar la creación y gestión de contenedores de aplicaciones, mejorando la eficiencia y la portabilidad del desarrollo de software.
En este tutorial veremos los pasos necesarios para instalar docker en debian 12
Tabla de contenidos
Instalar docker
actualizamos los paquetes
sudo apt update
instalamos los paquetes
sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common gpg
añadimos la llave GPG para el repo oficial
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
añadimos los repos oficiales de docker
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
actualizamos la base de datos de paquetes
sudo apt update
Nos aseguramos que tenemos los paquetes oficiales de docker
apt-cache policy docker-ce
![](https://enguillem.es/wp-content/uploads/2024/01/image-1.png)
Instalamos docker
sudo apt install docker-ce
Comprobamos que docker funciona correctamente
sudo systemctl status docker
![](https://enguillem.es/wp-content/uploads/2024/01/image-2-1024x399.png)
Ejecutar docker sin sudo
añadimos nuestro usuario al grupo docker
sudo usermod -aG docker ${USER}
entramos con este usuari y comprobamos que puede ejectuar docker
su - ${USER}
docker
Script resumen
Aquí tenéis un script con todos los pasos de instalación
#!/bin/bash
sudo apt -y install apt-transport-https ca-certificates curl gnupg2 software-properties-common gpg
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
sudo apt update
sudo apt -y install docker-ce
sudo apt -y install docker-compose
sudo usermod -aG docker ${USER}
Probar una imagen
Probamos la imagen hello-word para ver que todo funciona
docker run hello-world
![](https://enguillem.es/wp-content/uploads/2024/01/image-3.png)
Podemos buscar las imágenes según un criterio de búsqueda
![](https://enguillem.es/wp-content/uploads/2024/01/image-4-1024x576.png)
La columan oficial indica que es una distribución oficial, la descargamos con el comando
docker pull debian
![](https://enguillem.es/wp-content/uploads/2024/01/image-5.png)
para ver las imagenes descargadas
![](https://enguillem.es/wp-content/uploads/2024/01/image-6.png)
Ejecutar un contenedor a partir de una imagen
docker run -it debian
![](https://enguillem.es/wp-content/uploads/2024/01/image-7.png)
Podemos usar este contenedor como una máquina virtual, por ejemplo podemos actualizar sus paquetes
![](https://enguillem.es/wp-content/uploads/2024/01/image-8.png)
Podemos instar un paquete
![](https://enguillem.es/wp-content/uploads/2024/01/image-9-1024x448.png)
Salímos del contenedor con el comando exit
Gestionar contenedores
Para ver los contenedores activos
docker ps
![](https://enguillem.es/wp-content/uploads/2024/01/image-11.png)
para ver activos e inactivos
docker ps -a
![](https://enguillem.es/wp-content/uploads/2024/01/image-12-1024x93.png)
Para ver el último contenedor creado
docker ps -l
![](https://enguillem.es/wp-content/uploads/2024/01/image-13-1024x93.png)
Para iniciar un contenedor creado utilizamos docker start con la id del contenedor que queremos ejecutar, en nuestro caso 98080da3f83e
![](https://enguillem.es/wp-content/uploads/2024/01/image-14.png)
Ahora con docker ps veremos que está activo
![](https://enguillem.es/wp-content/uploads/2024/01/image-15.png)
Para parar un contenedor lo hacemos con docker stop seguido de la id o del nombre, ahora lo pararemos usando el nombre
![](https://enguillem.es/wp-content/uploads/2024/01/image-16.png)
Ahora eliminaremos el contenedor hello-world
![](https://enguillem.es/wp-content/uploads/2024/01/image-17-1024x233.png)
Guardar cambios en nuestra imagen
Guardamos los cambios de nuestro contenedor en una nueva imagen
docker commit -m «What you did to the image» -a «Author Name» container_id repository/new_image_name
![](https://enguillem.es/wp-content/uploads/2024/01/image-18-1024x220.png)
Ahora podemos ver una nueva imagen con docker images
![](https://enguillem.es/wp-content/uploads/2024/01/image-19-1024x136.png)
Enviar imagen de docker a los repositorios
Debéis haceros una cuenta en docker-hub https://hub.docker.com/
Una vez creada una imagen con los cambios deseados podemos enviarla a nuestra cuenta de docker-hub
Primero tenemos que hacer login con
docker login -u nuestro_usuario_docker
Os va a pedir usuario y password
Etiquetamos nuestra imagen en caso que no hayamos usado el mismo usuario que tenemos en docker-hub
docker tag usuarioLocal/debian_apache docker-registry-username/debian_apache
En mi caso no lo hago ya que usado mi usuari de docker-hub
Hacemos un push para enviar la imagen a docker-hub
![](https://enguillem.es/wp-content/uploads/2024/01/image-20-1024x136.png)
Si vamos a nuestra cuenta de docker-hub veremos la imagen recien guardada
![](https://enguillem.es/wp-content/uploads/2024/01/image-21.png)
Podéis usar mi imagen con el comando
docker pull enguillem/debian_apache