On this page

Development on Windows

This doc is about running RepoLaunch on Windows system to build and test repo in Windows environment.

Machine Requirements

OS version: Windows Pro 10 / 11 or Windows Enterprise 10 / 11 or Windows Server 2025. Simple Windows Personal / Family / Home version does not support docker at all!

CPU cores: >=12

RAM: >=32GB

Disk: Local Disk and >=800GB, SSD preferred

Internet speed: Download >= 300Mbps; Upload >= 75 Mbps

To run on Windows, you need to set up ...

(1) Download and run docker desktop installer from the Docker official website.

(2) If you want to build repo on windows container and windows image, remeber to click install windows container in the installer navigation as it is optional. After installation, open Docker Desktop, right click the docker icon in the task bar, click switch to Windows containers.

You will be prompted by docker desktop to turn on virtualization (and also container if you choose windows container) features like this:

powershell
# Search Powershell in the Search Bar and right click and choose 'run as Administrator'
Enable-WindowsOptionalFeature -Online -FeatureName $("Microsoft-Hyper-V", "Containers") -All

Of course you can also run Linux (or Android) images on Windows. Just right click the docker icon in the task bar, click switch to Linux containers. And now docker on Windows runs Linux-based containers.

(3) Enable long path in git. Open windows powershell as administrator,

powershell
git config --global core.longpaths true

(4) Enable long path in Windows system.

Go to Registry Editor, in the top of registry editor enter path HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem, find the item LongPathsEnabled, double click it and change the value to 1.

(5) Resolve Windows encoding issues

powershell
# in your powershell
$env:PYTHONUTF8="1"
$env:PYTHONIOENCODING="utf-8"

Now run original installation steps in Installation.

Windows Notes

(1) The way to export environment variables in Windows is

powershell
# powershell
$env:OPENAI_API_KEY="your_key"
cmd
:: command line prompt
set OPENAI_API_KEY=your_key

(2) Runtime Warning

For Windows docker, if you save many images / containers on the same machine, the docker will become overloaded -- become very slow and can never start again next time.

So to run Windows instances plase run 20 instances as a batch, push to dockerhub or compress to elsewhere for backup, delete all containers and most images locally, and run next batch. Or, distribute jobs on many Windows machines with each machine processing 20 instances at a time.

(3) If applying patch has decoding problems, please

powershell
# powershell
$env:PYTHONUTF8="1"
$env:PYTHONIOENCODING="utf-8"

(4) If you see the following error when repolaunch commits container to image:

text
500 Server Error for
http+docker://localnpipe/v1.52/commit?container=abfe0abab2fbba111ef56d0cd6af0ff4ec327de999f34d6528b1c044125613c9&repo=starryzhang%2Fsweb.eval.win&tag=szimek__signature_pa
d-835_windows&pause=True: Internal Server Error ("re-exec error: exit status 1: output: hcsshim::ImportLayer failed in Win32: The system cannot find the path specified.
(0x3)")

This has long been a known issue of windows container: https://github.com/microsoft/hcsshim/issues/835. We wish the Windows system team could fix it in the future. Amusingly, the issue has been open for 5 years with no solution. Thus, we do not count this bug into our success rate.

From our initial diagnosis we believe the error is associated with the I/O quality of the disk. So always use SSD disk with the best configuration as you can.