FROM {{ .Image }} USER root {{- if eq .Release.VersionID "9" }} RUN echo "deb http://archive.debian.org/debian stretch main" > /etc/apt/sources.list && \ echo "deb-src http://archive.debian.org/debian stretch main" >> /etc/apt/sources.list && \ echo "deb http://archive.debian.org/debian stretch-backports main" >> /etc/apt/sources.list && \ echo "deb http://archive.debian.org/debian-security stretch/updates main" >> /etc/apt/sources.list && \ echo "deb-src http://archive.debian.org/debian-security stretch/updates main" >> /etc/apt/sources.list {{- end }} RUN apt-get update && \ DEBIAN_FRONTEND=noninteractive apt-get -y install --no-install-recommends \ linux-image-amd64 && \ find /boot -type l -exec rm {} \; RUN ARCH="$([ "$(uname -m)" = "x86_64" ] && echo amd64 || echo arm64)"; \ DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ systemd-sysv \ systemd \ {{- if .Grub }} grub-common \ grub2-common \ {{- end }} {{- if .GrubBIOS }} grub-pc-bin \ {{- end }} {{- if .GrubEFI }} grub-efi-${ARCH}-bin \ {{- end }} dbus \ iproute2 \ isc-dhcp-client \ iputils-ping RUN systemctl preset-all {{ if .Password }}RUN echo "root:{{ .Password }}" | chpasswd {{ end }} {{ if eq .NetworkManager "netplan" }} RUN apt install -y netplan.io RUN mkdir -p /etc/netplan && printf '\ network:\n\ version: 2\n\ renderer: networkd\n\ ethernets:\n\ eth0:\n\ dhcp4: true\n\ dhcp-identifier: mac\n\ nameservers:\n\ addresses:\n\ - 8.8.8.8\n\ - 8.8.4.4\n\ ' > /etc/netplan/00-netcfg.yaml {{ else if eq .NetworkManager "ifupdown"}} RUN if [ -z "$(apt-cache madison ifupdown2 2> /dev/nul)" ]; then apt install -y ifupdown; else apt install -y ifupdown2; fi RUN mkdir -p /etc/network && printf '\ auto eth0\n\ allow-hotplug eth0\n\ iface eth0 inet dhcp\n\ ' > /etc/network/interfaces {{ end }} {{- if .Luks }} RUN DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends cryptsetup-initramfs && \ echo "CRYPTSETUP=y" >> /etc/cryptsetup-initramfs/conf-hook && \ update-initramfs -u -v {{- end }} # needs to be after update-initramfs {{- if not .Grub }} RUN mv $(find /boot -name 'vmlinuz-*') /boot/vmlinuz && \ mv $(find /boot -name 'initrd.img-*') /boot/initrd.img {{- end }} RUN apt-get clean && \ rm -rf /var/lib/apt/lists/*