Dockerized QEMU for testing stuff on Windows
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Marvin Martinson beae177793 Add time fix for qemu Windows vm 4 months ago
.gitignore Initial commit 5 months ago
Dockerfile Fix macvtap issues and move to network_mode: host 4 months ago
README.md Fix macvtap issues and move to network_mode: host 4 months ago
docker-compose.yml Remove unused tmpfs 5 months ago
entrypoint.sh Add time fix for qemu Windows vm 4 months ago

README.md

Dockerized QEMU

Dockerized QEMU image for reproducibly testing stuff on Windows. Prepare OS image as described below. Disk image is used as read-only using the QEMU disk snapshot option, all local changes are lost after Docker container restart. Specify MAC address via environment variable MAC. For more example see docker-compose.yml You probably need the machines to come up with fixed IP-s. Use static leases on your DHCP server to assign the IP addresses to the VM-s.

Windows template image preparation

Prepare the image using libvirt or similar where you can specify virtio SCSI controller for storage. For Windows 10 install also mount virtio SCSI and networking drivers ISO. In Windows 10 partitioning wizard provide drivers from that ISO. Install OpenSSH server. Make sure OpenSSH starts during boot. Insert Jenkins or your favourite CI/CD software SSH public keys into C:\ProgramData\ssh\administrators_authorized_keys and adjust ACL-s as described here Use the resulting virtual machine disk image with this Docker image.

Debugging

If you can't ping the VM from host, make sure bridge mode is used on the macvlanX interface:

ip -d link show type macvtap