#!/bin/sh # container-tools - Manage systemd-nspawn containers # # Description: example for automated Debian base system container image creation # Requires: debootstrap plzip xz-utils # Usage: sudo ./container-images.sh set -e ARCHITECTURES="amd64 i386" DISTRIBUTIONS="stretch sid" MIRROR="https://deb.debian.org/debian" INCLUDE="dbus" DATE="$(date +%Y%m%d)" for DISTRIBUTION in ${DISTRIBUTIONS} do for ARCHITECTURE in ${ARCHITECTURES} do SOURCE="debian-${DISTRIBUTION}-${ARCHITECTURE}_${DATE}" TARGET="debian-${DISTRIBUTION}-${ARCHITECTURE}" debootstrap --arch=${ARCHITECTURE} --include=${INCLUDE} ${DISTRIBUTION} ${SOURCE} ${MIRROR} chroot "${SOURCE}" apt-get clean rm -f "${SOURCE}/etc/apt/apt.conf.d/01autoremove-kernels" rm -f "${SOURCE}/etc/hostname" echo "" > "${SOURCE}/etc/machine-id" rm -f "${SOURCE}/etc/resolv.conf" rm -f "${SOURCE}/var/lib/systemd/catalog/database" echo "Creating ${TARGET}.tar.lz" tar --lzip -cf "${TARGET}.tar.lz" "${SOURCE}" echo "Creating ${TARGET}.tar.xz" tar --xz -cf "${TARGET}.tar.xz" "${SOURCE}" done done