
Cree imágenes de contenedores livianos mmdebstrap para estibador Es una excelente manera de crear un entorno mínimo y eficiente para su aplicación. Este proceso le permite aprovechar el poder de Debian mientras mantiene su imagen pequeña y manejable. En este tutorial paso a paso, le explicaremos cómo Utilice mmdebstrap para crear una imagen acoplable en linux.
Esto es útil para crear imágenes Docker mínimas optimizadas, como microservicios, canalizaciones de CI/CD o aplicaciones sin servidor.
¿Por qué usar? mmdebstrap?
- Pequeña imagen básica: Produce un sistema de archivos raíz de Debian mínimo, reduciendo así el tamaño de la imagen.
- Formato de salida flexible: Puede producir archivos tarball, squashfs o directorios que se pueden importar fácilmente a Docker.
- Sin dependencias: no necesita
dpkgoaptdentro del contenedor. - Reproducibilidad: Admite versiones precisas de paquetes para compilaciones consistentes.
Utilice mmdebstrap para crear imágenes de Docker
mmdebstrap es una alternativa moderna, minimalista y libre de dependencias debootstrap Se utiliza para crear un sistema de archivos raíz basado en Debian. Admite compilaciones repetibles y se integra bien con Docker.
Requisitos previos
Antes de comenzar, asegúrese de tener instalado el siguiente software:
Cerciorarse Docker está instalado y ejecutarlo en su sistema. De lo contrario, utilice el siguiente enlace para instalar Docker en su sistema Linux preferido.
También puedes usar tabernero Si prefiere ejecutar contenedores en modo sin raíz.
Próximo, Instalar mmdebstrap Si aún no lo has hecho. Puede utilizar el siguiente comando para hacer esto:
sudo apt update sudo apt install mmdebstrap
Paso 1: cree un sistema de archivos Debian mínimo
Primero creamos una imagen básica de Debian usando el siguiente comando mmdebstrap. Esta imagen servirá como base para nuestro contenedor Docker.
1. Seleccione el paquete Debian:
Decida qué versión de Debian desea utilizar (por ejemplo, bullseye, bookworm).
2. Crea una imagen:
Ejecute los siguientes comandos para crear un sistema de archivos Debian básico:
mmdebstrap --variant=minbase --include=ca-certificates,curl stable debian-rootfs.tar
Esto agregará los paquetes requeridos como curl y ca-certificates. Puede personalizar aún más su contenedor instalando complementos adicionales o realizando cambios de configuración.
aquí,
--variant=minbase: Cree un sistema mínimo y básico sin kits innecesarios.--include=ca-certificates,curl: Instale las credenciales curl y ca en la imagen de Debian.stable: Especifique la versión de Debian (por ejemplo,stable,bookwormobullseye).debian-rootfs.tar: El tarball de salida del sistema de archivos raíz.
También puede limpiar el caché del paquete y los registros en el tarball antes de importar:
tar --delete -f debian-rootfs.tar ./var/cache/apt ./var/lib/apt/lists
Paso 2: importar Tarball a Docker
Importe la imagen de Debian que creó en el paso anterior a la ventana acoplable usando el comando:
cat debian-rootfs.tar | docker import - debian:custom
aquí,
debian:custom: Asigne etiquetas a imágenes importadas.
Paso 3: verificar la imagen de Docker
Verifique que la imagen de la ventana acoplable se haya importado a su entorno de la ventana acoplable usando el comando:
docker images
Verá un resultado como este:
REPOSITORY TAG IMAGE ID CREATED SIZE localhost/debian custom 7762908acf49 21 seconds ago 170 MB
Paso 4: ejecutar el contenedor
Finalmente, ejecuta el contenedor con la nueva imagen usando el comando:
docker run -it debian:custom /bin/bash
Este comando inicia un nuevo contenedor a partir de su imagen y abre una terminal interactiva.
Si desea ejecutar el contenedor en modo independiente, utilice -d bandera.
en conclusión
usar mmdebstrap Crear imágenes de contenedores livianos para Docker parece un proceso simple. Al crear un entorno Debian mínimo, puede asegurarse de que sus imágenes sean pequeñas y eficientes.
Este método es particularmente útil para los desarrolladores que desean crear imágenes Docker personalizadas adecuadas para sus aplicaciones. En sólo unos pocos pasos, puede tener un contenedor Debian liviano y completamente funcional listo para su proyecto.
Lectura relacionada:










