Proxmox
Frustrating to use, but far better than most alternatives.
Proxmox Interfaces
# network interface settings; autogenerated
# Please do NOT modify this file directly, unless you know what
# you're doing.
#
# If you want to manage part of the network configuration manually,
# please utilize the 'source' or 'source-directory' directives to do
# so.
# PVE will preserve these directives, but will NOT its network
# configuration from sourced files, so do not attempt to move any of
# the PVE managed interfaces into external files!
source /etc/network/interfaces.d/*
auto lo
iface lo inet loopback
allow-hotplug eth2
auto eth2
iface eth2 inet static
address 10.x.x.x
netmask 255.255.255.0
gateway 10.x.x.1
broadcast 10.x.x.255
network 10.x.x.0
dns-nameservers 10.x.x.x
dns-search lustfield.net
# dns-* options are implemented by the resolvconf package, if installed
iface eth0 inet manual
iface eth1 inet manual
auto bond0
iface bond0 inet manual
slaves eth0 eth1
bond_miimon 100
bond_mode 802.3ad
bond_xmit_hash_policy layer3+4
auto vmbr0
iface vmbr0 inet manual
bridge_ports bond0
bridge_stp off
bridge_fd 0
bridge_vlan_aware yes
Image Creation
Download from http://download.proxmox.com/images/system/
Extract archive into dir, mount stuff, chroot.
echo 'nameserver 10.41.7.1' >/etc/resolv.conf
cat >/etc/apt/sources.list <<EOF
deb http://apt.lustfield.net/debian stretch main contrib
deb http://apt.lustfield.net/debsec stretch/updates main contrib
deb http://apt.lustfield.net/debian stretch-updates main contrib
EOF
cat >/etc/apt/sources.list.d/saltstack.list <<EOF
deb http://apt.lustfield.net/sltstk9 stretch main
EOF
apt-get install dirmngr # apparently required for the following line
apt-key apt-key adv --keyserver keyserver.ubuntu.com --recv 0E08A149DE57BFBE
apt-get update
apt-get upgrade
apt-get install sysvinit-core salt-minion vim
apt-get purge xbase-clients debconf-i18n nano postfix postfix-sqlite reportbug systemd \
systemd-sysv tasksel-data tasksel telnet traceroute vim-tiny wamerican x11-apps \
x11-common x11-session-utils x11-utils x11-xkb-utils x11-xserver-utils xauth xinit
apt-get autoremove
apt-get clean
echo '' >/etc/resolv.conf
service salt-minion stop
killall dirmgr
exit
umount d/*
# make sure no files are still being held open
rm root/.bash_history
root@arctic:/home/michael/downloads/d# tar czf ../debian-9-lustfield_amd64.tar.gz *