-
Notifications
You must be signed in to change notification settings - Fork 41
Who owns C:\Program Files\Linux Containers? #407
Description
I was trying to understand the current state of LCOW, and when poking around, discovered I have:
C:\Program Files\Linux Containers\initrd.imgdated 16th December 2020 1:17pm- Contains
gcs.commitwith text 92ea373 (somewhere between 0.39 and 0.40) - Files in here are generally time-stamped 2019-03-18, which matches that commit as being the initrd.img src
- Contains
C:\Program Files\Linux Containers\kerneldated 16th December 2020 1:17pm- Contains uname string
4.19.27-linuxkit (root@82332b297024) #1 SMP Sun Mar 10 18:51:44 UTC 2019. - This suggests it was built from Update kernel/opengcs/runc linuxkit/lcow#41
- Contains uname string
C:\Program Files\Linux Containers\versions.txtdated 15th November 2018 7:29pm- This points to https://github.com/linuxkit/lcow/releases/tag/v4.14.35-v0.3.9
- This also points to Add 4.19 kernels (and remove 4.18 for arm64 and s390x) linuxkit/linuxkit#3211 (between v0.6 and v0.7)
So my first question is, who owns this directory? It's possible I was manually playing with LCOW setup in 2018, but I'm sure I'd remember touching it in late 2020. A quick poke around suggests that on Windows Server, I'd have to manage this directory myself, so perhaps Docker Desktop was or is managing it for me here (Windows 10)?
My guess is that Docker Desktop was managing it for me, and installed the versions pointed at by versions.txt (i.e. the last https://github.com/linuxkit/lcow release), and something else has updated it since with a between-releases opengcs build and unreleased https://github.com/linuxkit/lcow kernel build, and didn't update or remove versions.txt, which is now orphaned. (Which is a shame, as it would have pointed me directly to linuxkit/lcow#41 for example, rather than having to open the kernel in an editor)
Perhaps Docker Desktop is still managing this, but lost track of versions.txt? I see C:\Program Files\Docker\Docker\resources contains lcow-kernel and lcow-initrd.img with the same timestamps and sizes, along with other files similarly timestamped, which suggests they were installed as a Docker Desktop for Windows update, presumably 3.0.0, even though Docker had deprecated LCOW support itself by then.
Anyway, my second question is what is the plan for opengcs distribution in the future? I see that there's an 0.4.0 release of OpenGCS (the last version that would work with current Docker implementation) from which I could build an initrd, but I don't know if I should have expected that to appear somewhere via Docker or otherwise, or should be managing it myself?
https://github.com/linuxkit/lcow is archived as of March 2020, so I have similar questions about a kernel flow to go with the OpenGCS initrd. Is there any chance of that being replaced with, say, https://github.com/microsoft/WSL2-Linux-Kernel, or do they have sufficiently conflicting needs to make that infeasible? It seems like they are using the same underlying VM Platform system, but that might be unwarranted conflation.
SInce I mention the WSL2 kernel, is there any consideration of moving the servicing of C:\Program Files\Linux Containers (or at least its contents) via Windows Update, like C:\Windows\System32\lxss\tools\kernel now is?