Discover an innovative and efficient method of deploying Windows OS (x64) on your linux system using the power of Vagrant VM, libvirt, and docker-compose. Together, these technologies help you containerize Windows OS, enabling you to manage a Windows instance just as you would any Docker container. This seamless integration into existing workflows significantly enhances convenience and optimizes resource allocation.
⭐ Don't forget to star the project if it helped you!
- Docker version 20 or higher.
The docker compose is embedded as plugin
- Create/Update the environmental file
.env
# Vagrant image settings
MEMORY=8000 # 8GB
CPU=4
DISK_SIZE=100
- Create
docker-compose.yml
version: "3.9"
services:
win10:
image: docker.io/vaggeliskls/windows-in-docker-container:latest
env_file: .env
stdin_open: true
tty: true
privileged: true
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup
ports:
- 3389:3389
- Run:
docker compose up -d
For debugging purposes or even testing, you can always connect to the VM using remote desktop software.
Software used during development:
- Linux: rdesktop
rdesktop <ip>:3389
or remina - MacOS: Windows remote desktop
- Windows: buildin
Remote Windows Connection
Default users based on the Vagrant image are:
- Administrator
- Username: Administrator
- Password: vagrant
- User
- Username: vagrant
- Password: vagrant