Entrada

Instalación de Docker en Parrot OS

Instalación de Docker en Parrot OS

Este artículo ha sido co-creado con inteligencia artificial.

Parrot OS es una distribución de Linux basada en Debian que, si bien no cuenta con soporte oficial para Docker, permite la instalación de Docker Engine utilizando el repositorio apt de Docker para Debian 1. La clave está en utilizar el codename de la versión base de Debian que Parrot OS emplea, en lugar del codename que Parrot reporta en su propio sistema.

Para identificar qué versión base utiliza tu instalación de Parrot OS, puedes ejecutar cat /etc/os-release. La siguiente tabla muestra la relación entre las versiones de Parrot OS y sus bases de Debian asociadas23456:

Versión Parrot OSVersión Debian baseCodename Debian (VERSION_CODENAME)
Parrot 3Debian Testingstretch (Testing en ese momento)
Parrot 4Debian Testingbuster (Testing en ese momento)
Parrot 5Debian 11 Stablebullseye
Parrot 6Debian 12 Stablebookworm
Parrot 7Debian 13 Stabletrixie

Prerrequisitos

Requisitos del sistema

Desinstalar versiones anteriores

Este comando elimina los paquetes que podrían entrar en conflicto con la instalación oficial de Docker Engine1.

1
sudo apt remove $(dpkg --get-selections docker.io docker-compose docker-doc podman-docker containerd runc | cut -f1)

Instalación mediante repositorio apt

Antes de instalar Docker Engine por primera vez en una nueva máquina, se debe configurar el repositorio apt de Docker. Posterior a esto, la instalación y actualización de Docker será directa.

Configurar el repositorio apt de Docker

El primer paso es agregar la clave GPG oficial de Docker:

1
2
3
4
5
sudo apt update
sudo apt install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

Agregar el repositorio

Una vez configurada la clave GPG, se agrega el repositorio a las fuentes de apt. Es crucial especificar manualmente el codename de Debian correspondiente a la versión base de Parrot OS que se esté utilizando:

1
2
3
4
5
6
7
8
9
10
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/debian
Suites: trixie
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF

sudo apt update

Verifica que trixie coincida con tu codename, de lo contrario reemplaza con el tuyo basado en la tabla proporcionada.

Instalación de Docker Engine

Con el repositorio configurado, se procede a instalar los paquetes de Docker:

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

Verificación de la instalación

Una vez completada la instalación, Docker Engine se inicia automáticamente en sistemas basados en Debian. Para verificar que el servicio está corriendo:

1
sudo systemctl status docker

Para verificar la instalación, se puede ejecutar la imagen de prueba:

1
sudo docker run hello-world

Este comando descarga una imagen de prueba y la ejecuta en un contenedor. Si la instalación fue exitosa, se mostrará un mensaje de confirmación1.

Configuración post-instalación

Por defecto, ejecutar comandos Docker requiere privilegios de administrador (sudo). Para permitir que usuarios sin privilegios ejecuten Docker, se debe agregar el usuario al grupo docker:

1
2
sudo groupadd docker
sudo usermod -aG docker $USER

Para aplicar los cambios sin cerrar sesión:

1
newgrp docker

Tras esto, debería ser posible ejecutar docker sin sudo17.

Es importante considerar las implicaciones de seguridad de agregar usuarios al grupo docker. Los usuarios con acceso al grupo docker pueden escalar privilegios de forma efectiva, ya que tienen acceso al socket de Docker con permisos de root. Para entornos donde esto representa un riesgo inaceptable, Docker ofrece la opción de ejecutar el daemon en modo rootless7.

Desinstalación

Para desinstalar Docker Engine completamente:

1
sudo apt purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Para eliminar imágenes, contenedores y volúmenes:

1
2
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd

Para remover el repositorio y las claves:

1
2
sudo rm /etc/apt/sources.list.d/docker.sources
sudo rm /etc/apt/keyrings/docker.asc

Referencias

Esta entrada está licenciada bajo CC BY 4.0 por el autor.