Debe aislar un paquete o un servicio Debian para una prueba, sin instalar Docker en el host. Si la máquina ya está funcionando con systemd, systemd-nspawn es suficiente para lanzar una raíz Linux en un contenedor de prueba.
El método a continuación utiliza una raíz Debian Bookworm desechable, arranca la máquina con una red privada, y luego controla su estado con machinectl. El objetivo: probar sin exponer accidentalmente un servicio, y luego detenerlo correctamente.

Preparar el host systemd antes del contenedor
Reserve este procedimiento para un host systemd reciente y para una imagen de laboratorio. En un servidor remoto, mantenga su sesión SSH actual antes de arrancar el contenedor.
La red privada limita el riesgo durante la prueba, pero también corta los accesos directos desde el contenedor. Si su prueba necesita descargar paquetes después del arranque, tenga en cuenta esto antes de elegir esta opción.
ps -p 1 -o comm=
systemctl --version
command -v systemd-nspawn
command -v machinectl
El primer comando debe mostrar systemd. Si falta systemd-nspawn o machinectl, instale el paquete systemd-container en Debian o Ubuntu.
No añada nspawn en una VM o un contenedor ya muy restringido para evitar un fallo. Las capacidades del núcleo y ciertos montajes pueden faltar, y el error será menos legible que en un host systemd normal.
Crear una raíz Debian dedicada a la prueba
El directorio colocado bajo /var/lib/machines se convierte en el sistema de archivos del contenedor. Use un nombre explícito y nunca dirija este comando a una raíz existente, un montaje de producción o un directorio de respaldo.
sudo apt update
sudo apt install debootstrap systemd-container
sudo install -d -m 0755 /var/lib/machines/debian-test
sudo debootstrap --variant=minbase bookworm
/var/lib/machines/debian-test https://deb.debian.org/debian
debootstrap descarga una base mínima de Debian desde el host. La red privada solo se aplica al inicio del contenedor, no en esta fase de creación.
Esta separación evita convertir el primer intento en un servicio accesible en la LAN. La raíz sigue siendo fácil de eliminar si la prueba no debe durar.
Iniciar la máquina con una red privada
Abrir una segunda sesión en el host antes del arranque. La primera mantiene nspawn en primer plano, con los mensajes de error visibles.
sudo systemd-nspawn -M debian-test
-D /var/lib/machines/debian-test
--private-network --boot
La opción -M da el nombre debian-test a la máquina. -D designa la raíz creada justo antes.
Con --private-network, el contenedor no comparte la pila de red del host. Para un primer arranque, este límite protege mejor que un daemon de prueba expuesto por error.
Controlar la máquina con machinectl
Desde la segunda sesión, primero verifique que systemd ha registrado la máquina. Luego, ingrese a su shell para confirmar que está en la Debian de prueba.
machinectl list
sudo machinectl shell debian-test
cat /etc/os-release
exit
machinectl list debe mostrar debian-test mientras está en ejecución. En el shell, cat /etc/os-release debe corresponder a la base Debian Bookworm elegida.
Si la máquina no aparece, vuelva a la sesión nspawn. El mensaje mostrado en primer plano dará una pista más confiable que un reinicio lanzado al azar.
- Detenga el contenedor con
sudo machinectl poweroff debian-test, o useCtrl+Cen la sesión nspawn si el arranque ha fallado. - Luego, verifique que
machinectl listya no muestredebian-test. - Elimine la imagen de prueba solo después de la detención:
sudo rm -rf /var/lib/machines/debian-test.
El último comando elimina toda la raíz del contenedor. Mantenga el directorio si desea repetir la misma prueba, pero no lo trate como una base de producción sin seguimiento de actualizaciones.
Elegir nspawn, Docker o Podman según la necesidad
Para una máquina Linux completa, local y desechable, systemd-nspawn es la elección más directa en un host systemd. Evita añadir una pila Docker solo para abrir un shell de prueba.
Para construir imágenes OCI, integrar una cadena CI o mover el mismo contenedor entre varios hosts, Docker o Podman siguen siendo más adecuados. La necesidad no es la misma.
La guía para instalar Docker en Debian con verificaciones cubre este otro enfoque. Si su prueba depende de un servicio iniciado al arranque, la página para leer los servicios de systemd ayuda a controlar su estado. La documentación systemd-nspawn(1) en man7 detalla las opciones de montaje y red.