Cómo solucionar `docker run` con exit code 1 en Raspberry Pi The article explains that a `docker run` command resulting in exit code 1 on a physical Raspberry Pi is often caused by an architecture mismatch (e.g., running an amd64 image on an ARM system) or a syntax error in the command, such as spaces around the `=` in `--net = host`. It recommends verifying the architecture with `uname -m` and `docker inspect`, installing QEMU for multi-architecture support, and using `docker buildx` to build images specifically for ARM platforms to prevent the error. docker run con exit code 1 en Raspberry Pi El error Exited 1 indica que el proceso principal del contenedor terminó con un código de salida no cero —es decir, falló. El hecho de que funcione en una VM de Raspberry Pi pero no en el hardware físico apunta a una diferencia en el entorno de ejecución. Las causas más comunes en Raspberry Pi son: amd64 x86 64 y se intenta ejecutar en ARM armv7l o aarch64 .binfmt misc configurado, Docker no puede ejecutar binarios de otra arquitectura.docker run : El espacio en --net = host con espacios alrededor del = es un error de sintaxis que no siempre es detectado por Docker, pero puede causar comportamientos erráticos. Arquitectura del Raspberry Pi hardware físico uname -m Arquitectura de la imagen docker inspect myimage --format '{{.Architecture}}' Si uname -m muestra armv7l o aarch64 , y la imagen reporta amd64 , la arquitectura no coincide. docker run El comando original tiene un error grave: --net = host espacios alrededor del = . Docker interpreta = como parte del valor del flag, lo que puede causar fallos silenciosos o errores de parseo. ✅ Comando corregido: docker run --net=host -d -t myimage ⚠️ Nota crítica: En versiones recientes de Docker, --net=host no funciona en contenedores no Linux como en Raspberry Pi conarmhf , y puede causar fallos si el kernel no lo soporta. Si el contenedor no necesita acceso directo a la red del host, usa--net=bridge . docker run --net=host -it --rm myimage Elimina -d background y añade-it para ver logs en tiempo real y capturar errores. Instala soporte multiarquitectura: Instala binfmt-support y QEMU sudo apt update && sudo apt install -y qemu-user-static binfmt-support Registra los binarios QEMU para Docker docker run --rm --privileged multiarch/qemu-user-static --reset -p yes Luego ejecuta de nuevo tu contenedor. docker ps -a Encuentra el ID del contenedor con Exited 1 docker logs