sábado, 28 de marzo de 2026

Instalación de Docker en Raspberry Pi 4 con Raspbian Bookworm

 


En este artículo se detalla el proceso completo para instalar Docker en una Raspberry Pi 4 utilizando Raspbian (Debian 12 Bookworm). Se incluye configuración del repositorio oficial, verificación y ajustes opcionales según el gestor de red.


📌 Requisitos

  • Raspberry Pi 4

  • Raspbian Bookworm actualizado

  • Acceso a terminal con privilegios sudo

  • Conexión a internet


🔧 1. Preparar el sistema

Instalar dependencias necesarias:

sudo apt update
sudo apt install apt-transport-https ca-certificates curl gnupg lsb-release

🔐 2. Agregar clave GPG oficial de Docker

curl -fsSL https://download.docker.com/linux/debian/gpg | \
sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

📦 3. Agregar repositorio oficial

echo "deb [arch=arm64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] \
https://download.docker.com/linux/debian $(lsb_release -cs) stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Actualizar índices:

sudo apt update

⚠️ Nota sobre reinicio

No es estrictamente obligatorio, pero puede evitar problemas de entorno:

sudo reboot

🐳 4. Instalar Docker

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

Instalar soporte para Docker Compose (plugin clásico o moderno según repos):

sudo apt install docker-compose

✅ 5. Verificar instalación

Ejecutar contenedor de prueba:

sudo docker run hello-world

Esto descarga automáticamente la imagen desde Docker Hub y ejecuta un contenedor de validación.


👤 6. Ejecutar Docker sin sudo

Agregar el usuario actual al grupo docker:

sudo groupadd docker
sudo usermod -aG docker "$USER"
newgrp docker

Verificar:

docker run hello-world

🔄 7. Habilitar Docker al iniciar el sistema

sudo systemctl enable docker.service
sudo systemctl enable containerd.service

🌐 8. Consideración sobre gestor de red (opcional)

En Bookworm, el sistema usa por defecto NetworkManager, por lo que dhcpcd generalmente no está instalado. En ese caso, no es necesario hacer nada adicional.

🔍 Verificar qué gestor estás usando

which dhcpcd
sudo systemctl status NetworkManager
nmcli device status

⚠️ Caso específico: uso de dhcpcd

Si tu sistema utiliza dhcpcd, puede haber conflictos con interfaces virtuales de Docker.

Editar:

sudo nano /etc/dhcpcd.conf

Agregar al final:

denyinterfaces veth*

Reiniciar servicio:

sudo systemctl restart dhcpcd.service

🎯 Conclusión

La instalación de Docker en Raspberry Pi con Bookworm es directa si se utiliza el repositorio oficial. El único punto a considerar es el gestor de red: en sistemas modernos no suele requerir ajustes, pero en configuraciones heredadas con dhcpcd puede ser necesario.


🧠 Recomendación

Para entornos productivos:

  • Evitar usar sudo en Docker (usar grupo)

  • Mantener imágenes actualizadas

  • Considerar uso de docker compose (plugin moderno)



viernes, 27 de marzo de 2026

Cómo solucionar el aviso libpng warning: iCCP: known incorrect sRGB profile en aplicaciones Qt

 


🧩 Problema

Al trabajar con aplicaciones en Qt5 que utilizan imágenes PNG, es común encontrar en la consola el siguiente aviso:

libpng warning: iCCP: known incorrect sRGB profile

Este mensaje indica que la imagen PNG contiene un perfil de color sRGB inválido o mal definido.

👉 Importante:

  • Es solo un warning, no rompe la ejecución.

  • No afecta directamente la funcionalidad.

  • Pero ensucia la salida de debug, lo cual es molesto en desarrollo.


🔍 Causa

Algunas imágenes PNG (generalmente exportadas desde ciertos editores) incluyen perfiles de color incorrectos o incompatibles con libpng, que es la librería usada internamente por Qt para procesarlas.


✅ Solución rápida

Podés eliminar esos metadatos usando ImageMagick:

mogrify -strip image.png

¿Qué hace este comando?

  • Elimina todos los metadatos del archivo

  • Incluye perfiles de color (iCCP)

  • Sobrescribe la imagen original


⚠️ Consideración importante

Este comando modifica el archivo original. Si necesitás conservar los metadatos, hacé un backup antes.


🚀 Procesar múltiples imágenes

Si tenés muchas imágenes PNG en un proyecto, podés limpiarlas todas con:

find . -type f -name "*.png" -exec mogrify -strip {} \;

🧠 Explicación del comando

  • find . → busca desde el directorio actual

  • -type f → solo archivos

  • -name "*.png" → filtra PNG

  • -exec mogrify -strip {} → ejecuta limpieza en cada archivo

  • \; → finaliza la instrucción


🎯 Resultado

Después de aplicar esto:

  • Se eliminan perfiles sRGB inválidos

  • Desaparece el warning en consola

  • Las imágenes siguen funcionando normalmente


🧪 Alternativa (sin sobrescribir)

Si no querés modificar los archivos originales:

convert image.png -strip image_clean.png

Esto genera una copia limpia.


🏁 Conclusión

El warning de libpng es inofensivo, pero conviene eliminarlo para mantener una salida de debug limpia. Con mogrify -strip, podés resolverlo de forma rápida y masiva en todo tu proyecto.


Si trabajás con Qt de forma intensiva, vale la pena integrar este paso en tu pipeline de assets.

Cómo configurar una IP estática en Raspberry Pi 4 (Raspbian Bookworm)

 

Cómo configurar una IP estática en Raspberry Pi 4 (Raspbian Bookworm)

En este artículo te muestro cómo configurar una IP estática en una Raspberry Pi 4 utilizando Raspbian (Debian 12 Bookworm). Este método utiliza nmtui, una herramienta en modo texto muy práctica incluida con NetworkManager.


📌 Requisitos

  • Raspberry Pi 4 con Raspbian Bookworm instalado

  • Acceso a terminal

  • Permisos de administrador (sudo)


🔎 Verificar versión del sistema

Primero confirmamos el sistema operativo:

lsb_release -a

Deberías ver algo como:

Distributor ID: Debian
Description:    Debian GNU/Linux 12 (bookworm)
Release:        12
Codename:       bookworm

⚙️ Abrir el configurador de red

Ejecutá:

nmtui

Se abrirá una interfaz como esta:

  • Edit a connection

  • Activate a connection

  • Set system hostname


🛠️ Configurar IP estática

  1. Seleccioná "Edit a connection"

  2. Elegí tu interfaz de red:

    • eth0 (cable)

    • wlan0 (wifi)

  3. Presioná Enter en Edit


🌐 Configuración manual

Dentro de la configuración:

  • En IPv4 CONFIGURATION cambiar:

    Automatic → Manual
    
  • Luego agregá:

    • Address: IP deseada (ej: 192.168.1.100/24)

    • Gateway: IP del router (ej: 192.168.1.1)

    • DNS servers: (ej: 8.8.8.8, 8.8.4.4)


✅ Guardar cambios

  • Bajá hasta OK y guardá

  • Volvé al menú principal


🔄 Activar conexión

  1. Entrá en "Activate a connection"

  2. Desactivá y activá nuevamente la interfaz


🔍 Verificar IP

Ejecutá:

ip a

O:

hostname -I

⚠️ Consideraciones

  • Asegurate de que la IP elegida esté fuera del rango DHCP del router

  • Evitá conflictos con otros dispositivos

  • Si usás WiFi, verificá que la red esté correctamente configurada


🧠 Alternativa

También podés configurar IP estática editando archivos como:

/etc/dhcpcd.conf

Pero en Bookworm, el enfoque recomendado es usar NetworkManager (nmtui).


🎯 Conclusión

Usar nmtui simplifica mucho la configuración de red en Raspberry Pi con Bookworm. Es rápido, visual y evita errores típicos al editar archivos manualmente.