maybe vagrant would be a better option than docker...can still automate building the image but it links to virtualbox, vmware, hyperv, and remote (aws, azure) VMs. Since it's a real vm and not a container you can use the native virtual machine tool for GUI or remote X11