Dockerization of supported QEMU releases
Go to file
2021-03-19 08:38:04 -07:00
.github/workflows Use jq-template.awk 2020-08-27 16:34:48 -07:00
4.2 Add "qemu-efi-aarch64" and "qemu-efi-arm" firmware packages and set "firmwarepath" matching Debian's 2021-03-19 08:38:04 -07:00
5.0 Add "qemu-efi-aarch64" and "qemu-efi-arm" firmware packages and set "firmwarepath" matching Debian's 2021-03-19 08:38:04 -07:00
5.1 Add "qemu-efi-aarch64" and "qemu-efi-arm" firmware packages and set "firmwarepath" matching Debian's 2021-03-19 08:38:04 -07:00
5.2 Add "qemu-efi-aarch64" and "qemu-efi-arm" firmware packages and set "firmwarepath" matching Debian's 2021-03-19 08:38:04 -07:00
.gitattributes Fix .gitattributes specificity 2020-10-16 16:28:51 -07:00
.gitignore Use jq-template.awk 2020-08-27 16:34:48 -07:00
apply-templates.sh Use jq-template.awk 2020-08-27 16:34:48 -07:00
Dockerfile.template Add "qemu-efi-aarch64" and "qemu-efi-arm" firmware packages and set "firmwarepath" matching Debian's 2021-03-19 08:38:04 -07:00
generate-stackbrew-library.sh Update to 5.2.0 (GA) 2020-12-08 13:59:00 -08:00
README.md Add a note about ping/ICMP 2020-12-03 10:34:32 -08:00
start-qemu Also switch "riscv64" to "virtio-net-device" 2021-03-02 15:46:10 -08:00
update.sh Use jq-template.awk 2020-08-27 16:34:48 -07:00
versions.json Update to 5.2.0 (GA) 2020-12-08 13:59:00 -08:00
versions.sh Use jq-template.awk 2020-08-27 16:34:48 -07:00

tianon/qemu

$ touch /home/jsmith/hda.qcow2
$ docker run -it --rm \
	--device /dev/kvm \
	--name qemu-container \
	-v /home/jsmith/hda.qcow2:/tmp/hda.qcow2 \
	-e QEMU_HDA=/tmp/hda.qcow2 \
	-e QEMU_HDA_SIZE=100G \
	-e QEMU_CPU=4 \
	-e QEMU_RAM=4096 \
	-v /home/jsmith/downloads/debian.iso:/tmp/debian.iso:ro \
	-e QEMU_CDROM=/tmp/debian.iso \
	-e QEMU_BOOT='order=d' \
	-e QEMU_PORTS='2375 2376' \
	tianon/qemu

Note: port 22 will always be mapped (regardless of the contents of QEMU_PORTS).

For supplying additional arguments, use a command of start-qemu <args>. For example, to use -curses, one would docker run ... tianon/qemu start-qemu -curses.

For UEFI support, the ovmf package is installed, which can be utilized most easily by supplying --bios /usr/share/ovmf/OVMF.fd.

By default, this image will use QEMU's user-mode networking stack, which means if you want ping/ICMP working, you'll likely need to also include something like --sysctl net.ipv4.ping_group_range='0 2147483647' in your container runtime settings.