diff --git a/.env.example b/.env.example index ccd4b5a..ecbe9f5 100644 --- a/.env.example +++ b/.env.example @@ -59,8 +59,9 @@ VERSION=2022 RAM_SIZE=8G CPU_CORES=4 DISK_SIZE=100G -# QEMU disk I/O backend: native (default, works on any kernel), threads, or -# io_uring (faster, needs kernel 5.12 or newer; older kernels fail at boot). +# QEMU disk I/O backend: native, threads or io_uring. Empty lets QEMU choose, +# which is io_uring on recent kernels. Kernels before 5.12 (Ubuntu 20.04) fail +# at boot with "Failed to initialize io_uring": set native there. # DISK_IO=native # Local administrator created by the unattended install; also the RDP login WIN_USERNAME=admin diff --git a/README.md b/README.md index df2d4b7..3d1c914 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,7 @@ Two authentication methods are supported. Set **one** of them in `.env`: | `INSTALL_RTOOLS` | `true` | Install Rtools 4.0 with `mingw-w64-x86_64-make` | | `VERSION` | `2022` | dockur Windows release (`2022` = Windows Server 2022 evaluation) | | `RAM_SIZE` / `CPU_CORES` / `DISK_SIZE` | `8G` / `4` / `100G` | VM size | -| `DISK_IO` | `native` | QEMU disk I/O backend. `io_uring` is faster but needs kernel 5.12 or newer; on older kernels QEMU exits at boot with `Failed to initialize io_uring` | +| `DISK_IO` | QEMU's choice | QEMU disk I/O backend: `native`, `threads` or `io_uring`. Kernels before 5.12 exit at boot with `Failed to initialize io_uring`; set `native` there | | `WIN_USERNAME` / `WIN_PASSWORD` | `admin` / `runner` | Local administrator created by the install, also the RDP login | 2. Start it and follow the container side (ISO download, QEMU boot): diff --git a/docker-compose.yml b/docker-compose.yml index 48c363b..3857725 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -17,9 +17,9 @@ services: RAM_SIZE: "${RAM_SIZE:-8G}" CPU_CORES: "${CPU_CORES:-4}" DISK_SIZE: "${DISK_SIZE:-100G}" - # QEMU disk I/O backend. dockur picks io_uring, which fails on kernels - # before 5.12 with "Failed to initialize io_uring: Cannot allocate memory". - DISK_IO: "${DISK_IO:-native}" + # QEMU disk I/O backend; empty lets QEMU choose. Set DISK_IO=native in .env + # on kernels before 5.12 ("Failed to initialize io_uring" at boot). + DISK_IO: "${DISK_IO:-}" USERNAME: "${WIN_USERNAME:-admin}" PASSWORD: "${WIN_PASSWORD:-runner}" devices: