Open TBBle opened 2 years ago
My use-case is invalid: I should either keep daemon.json in its default location, or put a symlink from C:\ProgramData\Docker to D:\dockerdata so ue4-docker isn't confused.
I believe it should be OK to have dockerd even on a different machine (okay, this won't work currently because of credentials helper, but anyway).
Make it a warning, and add a diagnostic to measure the effective value with dir inside a container.
I'm leaning towards this. So, we're trying to say "hey, user, if ue4-docker diagnostics all
passes for you, then your env is very likely to be good".
Support a way to point at the read config file from another location, perhaps check docker info's data-root/config/daemon.json as well, and also even a command-line flag or config setting?
That's too much overcomplicated.
We actually don't check this in ue4-docker diagnostitcs all
(which I had already run to verify our setup). We check that it works on the command-line for docker run
(a specific bug in the Windows 1903 and 1909 releases), but we don't check the currently-configured value.
a specific bug in the Windows 1903 and 1909 releases
... which we should just drop already :D
Yeah, I was thinking that today when I was looking at that diagnostic. And I was looking at it because its current name suggested it might be doing a space-available check that I could recycle and replace the config-parsing.
Output of the
ue4-docker info
command:Additional details:
For reference, my
D:\dockerdata\config\daemon.json
:Yes, for reasons, our Docker data lives entirely on the
D:\
drive. So when trying to do builds, we fail with the following:which is incorrect since we do have 2TB in our storage-opts.
This check is fraught as-is, because as well as relocating the daemon.json (which per https://github.com/adamrehn/ue4-docker/issues/150#issuecomment-858390380 may happen simply by registering the service with a different data-root) and in my case, involved an edit to
HKLM\SYSTEM\CurrentControlSet\Services\stevedor
, you can also add--storage-opts
to the dockerd command line.I'm opening this issue to canvas opinions on possible resolutions. Locally, I've just stuck
False and
into that condition in build.py in the venv, but the next upgrade of ue4-docker on that machine will overwrite that.Options that come to mind, in roughly-increasing order of effort (for the project):
dir
inside a container.--its-big-enough
though.docker info
's data-root/config/daemon.json as well, and also even a command-line flag or config setting? This doesn't help people who've set storage-opts on the command-line.dir
says inside that. (This seems slow... Perhaps cache it? Although presumably in this case, we're going to spend a lot of time building anyway)I do note in
ue4-docker info
we've correctly identified the data-root drive for "Available disk space".