winboat icon indicating copy to clipboard operation
winboat copied to clipboard

[Feature] Relaxing RAM requirements & installing from physical media?

Open Sphyraena910 opened this issue 3 months ago • 5 comments

Feature Description

Hi, first many thanks for developing this amazing tool!

I used to test VMs on machines with limited resources (specifically, <4GB of RAM), and using swap to overcommit RAM, which turned out to be surprisingly usable. However, when I wanted to try WinBoat on these environments, it cannot even get past the Pre-Requisites screen. Even after working around that by editing meminfo, the docker container failed to start due to other RAM limitations in WinBoat's code. Also, I'm pretty sure that I cannot overcommit RAM for any single instance. So if these limitations could be relaxed (e.g., giving a warning when RAM and CPU Pre-Requisites aren't met, instead of preventing the user from carry-on altogether), it would make performing these tests much easier, as well as opening the possibility to run WinBoat on older systems.

As for installing from physical media, I used to deploy Windows VMs with autounattend.xml in the root directory of my installation media, which is extremely powerful as it allows for many customization options. So if WinBoat could implement installation involving physical media (e.g., specifying a physical installation disk instead of an iso file), it would be very appreciated.

Use-Case

Relaxing RAM requirements: deploying WinBoat on systems with limited resources via overcommiting RAM. Installation from physical media: allowing customization of windows install with autounattend.xml.

Proposed Implementation

No response

Notice

  • [x] I have checked the issue tracker and verified that this Feature Request has not been proposed before.
  • [ ] I would like to help out implementing this feature

Sphyraena910 avatar Oct 29 '25 11:10 Sphyraena910

same here. i have 8 GBs of ram and ample amount of (zram + 16 GB swapfile) but winboat image refuses to start if my free memory is under the RAM_SIZE that i have allocated, ~which would be 4 GBs (i wouldn't like to go lower for windows)~.

ERROR: Your configured RAM_SIZE of 4 GB is too high for the 3.0 GB of memory available, please set a lower value.

and it becomes worse, a currently running winboat image just shuts down if i "run out" of memory.

edit: winboat doesn't allow me to lower than 4 GBs for an image anyways.

memeth-my-hawk avatar Nov 03 '25 06:11 memeth-my-hawk

You can disable this check if you set RAM_CHECK: "N" in the compose file.

Also this is not even needed in the latest version of the docker image, but WinBoat uses an older release. In the latest version I automaticly reduce the RAM to the amount available, instead of giving the error.

Overcommitting RAM is a completely different story, this will not work because QEMU allocates the full amount in advance, regardless of the amount used. To solve that I would need to implement a feature called ballooning, where the amount automaticly resizes at runtime, but it is very complicated and the VirtIO driver for Windows is not very mature.

kroese avatar Nov 06 '25 01:11 kroese

@kroese where are you adding that to compose? Adding it into environment is not giving me any effect. Do I need to rebuild something? I also tried setting the image to use 5.12, but even the the compose file now says 5.12 winboat still tries using 5.07. How do I attempt to use the latest version of dockurr (at my own risk I know) or just add the RAM_CHECK?

Edit: for anyone who comes across this try docker-compose up --force-recreate --build -d after changing docker-compose.yaml

Ilan-Sperber avatar Nov 08 '25 16:11 Ilan-Sperber

Should either updating to dockur/windows5.12 or adding RAM_CHECK: "N" be pushed upstream? More specifically Is there any reason to stay on an older version of dockur/windows?

Ilan-Sperber avatar Nov 08 '25 21:11 Ilan-Sperber