# ---------------------------------------------------------------------------- # Multi stage docker build for live cd tools in docker/container environment # AlmaLinux Init + Live CD Tools + PyKickStart # ---------------------------------------------------------------------------- FROM almalinux:8 as builder RUN dnf install -y epel-release && \ # dnf upgrade -y && \ mkdir -p /mnt/system-root /mnt/system-root/build; \ dnf install --enablerepo="powertools" --enablerepo="epel" --installroot /mnt/system-root --releasever 8 --setopt=install_weak_deps=False --setopt=tsflags=nodocs -y \ dnf \ systemd \ livecd-tools \ pykickstart \ grub2-efi-*64 \ grub2-efi-*64-cdboot \ shim-*64 ; \ rm -rf /mnt/system-root/var/cache/* ; \ dnf clean all; \ cp /etc/yum.repos.d/* /mnt/system-root/etc/yum.repos.d/ ; \ /bin/date +%Y%m%d_%H%M > /mnt/system-root/etc/BUILDTIME ;\ # set DNF infra variable to container for compatibility with CentOS echo 'container' > /mnt/system-root/etc/dnf/vars/infra; \ # install only en_US.UTF-8 locale files, see # https://fedoraproject.org/wiki/Changes/Glibc_locale_subpackaging for details echo '%_install_langs en_US.UTF-8' > /mnt/system-root/etc/rpm/macros.image-language-conf; \ echo 'LANG="C.utf8"' > /etc/locale.conf; \ touch /mnt/system-root/etc/machine-id; \ rm -rf /var/cache/yum; # Create Final image from scratch for ks2rootfs FROM scratch COPY --from=builder /mnt/system-root/ / # systemd-udev-trigger.service \ # systemd-udevd.service \ # systemd-random-seed.service \ # systemd-remount-fs.service \ #sys-fs-fuse-connections.mount \ RUN systemctl mask \ dev-hugepages.mount \ systemd-logind.service \ getty.target \ console-getty.service \ systemd-machine-id-commit.service WORKDIR /build STOPSIGNAL SIGRTMIN+3 CMD ["/sbin/init"] #ENTRYPOINT ["/bin/bash"]