adamrehn / ue4-docker

Windows and Linux containers for Unreal Engine 4
https://docs.adamrehn.com/ue4-docker/
MIT License
771 stars 171 forks source link

ERROR: failed to solve: failed to prepare s4fk6i68j7hfwmf5ct0r7vb7f as 87ijy7nbb2ritjgfion0hs95w: invalid argument #348

Open dev-fredericfox opened 5 months ago

dev-fredericfox commented 5 months ago

Output of the ue4-docker info command:

ue4-docker version:         0.0.111 (latest available version is 0.0.111)
Operating system:           Linux (Debian GNU/Linux 12 (bookworm), 6.1.0-15-amd64)
Docker daemon version:      25.0.1
NVIDIA Docker supported:    No
Maximum image size:         No limit detected
Available disk space:       78.25 GiB
Total system memory:        15.56 GiB physical, 0 bytes virtual
CPU:                        4 physical, 4 logical ()

Additional details:

After the annoying MacM3 issues, I have found an old intel machine. It's running a Debian live distro on a 1TB ssd. Now I am stuck on step 12/20. Thoughts?

 => [internal] load build definition from Dockerfile                                                                                                                                                                                        0.0s
 => => transferring dockerfile: 8.11kB                                                                                                                                                                                                      0.0s
 => [internal] load metadata for docker.io/adamrehn/ue4-build-prerequisites:opengl-ubuntu22.04                                                                                                                                              0.0s
 => [internal] load metadata for docker.io/adamrehn/ue4-source:wyrdue532v0.0.1-opengl-ubuntu22.04                                                                                                                                           0.0s
 => [internal] load .dockerignore                                                                                                                                                                                                           0.0s
 => => transferring context: 53B                                                                                                                                                                                                            0.0s
 => CACHED [stage-1 1/8] FROM docker.io/adamrehn/ue4-build-prerequisites:opengl-ubuntu22.04                                                                                                                                                 0.0s
 => [builder  1/20] FROM docker.io/adamrehn/ue4-source:wyrdue532v0.0.1-opengl-ubuntu22.04                                                                                                                                                   1.2s
 => [internal] load build context                                                                                                                                                                                                           0.1s
 => => transferring context: 10.45kB                                                                                                                                                                                                        0.0s
 => [builder  2/20] COPY set-changelist.py /tmp/set-changelist.py                                                                                                                                                                        2385.4s
 => [builder  3/20] RUN python3 /tmp/set-changelist.py /home/ue4/UnrealEngine/Engine/Build/Build.version $CHANGELIST && echo '' && echo 'RUN directive complete. Docker will now commit the filesystem layer to disk.' && echo 'Note th  2346.9s
 => [builder  4/20] RUN rm -rf /home/ue4/UnrealEngine/.git && echo '' && echo 'RUN directive complete. Docker will now commit the filesystem layer to disk.' && echo 'Note that for large filesystem layers this can take quite some ti  2342.9s
 => [builder  5/20] COPY enable-opengl.py /tmp/enable-opengl.py                                                                                                                                                                          2270.8s
 => [builder  6/20] RUN python3 /tmp/enable-opengl.py /home/ue4/UnrealEngine/Engine/Config/BaseEngine.ini && echo '' && echo 'RUN directive complete. Docker will now commit the filesystem layer to disk.' && echo 'Note that for larg  2273.0s
 => [builder  7/20] COPY patch-filters-xml.py /tmp/patch-filters-xml.py                                                                                                                                                                  2271.0s
 => [builder  8/20] RUN python3 /tmp/patch-filters-xml.py /home/ue4/UnrealEngine/Engine/Build/InstalledEngineFilters.xml && echo '' && echo 'RUN directive complete. Docker will now commit the filesystem layer to disk.' && echo 'Not  2260.7s
 => [builder  9/20] COPY patch-build-graph.py /tmp/patch-build-graph.py                                                                                                                                                                  2256.8s
 => [builder 10/20] RUN python3 /tmp/patch-build-graph.py /home/ue4/UnrealEngine/Engine/Build/InstalledEngineBuild.xml /home/ue4/UnrealEngine/Engine/Build/Build.version && echo '' && echo 'RUN directive complete. Docker will now co  2259.1s
 => [builder 11/20] RUN ./Engine/Build/BatchFiles/Linux/Build.sh ShaderCompileWorker Linux Development -SkipBuild -buildubt && echo '' && echo 'RUN directive complete. Docker will now commit the filesystem layer to disk.' && echo '  2339.9s
 => ERROR [builder 12/20] WORKDIR /home/ue4/UnrealEngine                                                                                                                                                                                 2179.1s
------
 > [builder 12/20] WORKDIR /home/ue4/UnrealEngine:
------
Dockerfile:31
--------------------
  29 |     
  30 |     # Create an Installed Build of the Engine
  31 | >>> WORKDIR /home/ue4/UnrealEngine
  32 |     RUN ./Engine/Build/BatchFiles/RunUAT.sh BuildGraph \
  33 |         -target="Make Installed Build Linux" \
--------------------
ERROR: failed to solve: failed to prepare m471eaukjjjusxlri4l4jqmmv as j1hjcesj452iwudb6pixixiek: invalid argument
[ue4-docker build] Error: failed to build image "adamrehn/ue4-minimal:wyrdue532v0.0.1-opengl-ubuntu22.04".

I run the repair command and rebuild the container, but yet again got the same message with some other ID's

ERROR: failed to solve: failed to prepare pqthishbsna77dl7bvo29wfv7 as 9hf7c03dxvam7erimajd7a3b1: invalid argument

I also deleted docker and ue4-docker and reinstalled it.

TBBle commented 5 months ago

Is there any chance it's https://github.com/moby/buildkit/issues/3965 (see also https://github.com/moby/buildkit/issues/3898).

That's the only immediately-findable BuildKit issues I could find for that error message, and I guess it's possible that the ShaderCompileWorker build step created a UNIX socket, causing the WORKDIR step to fail.

There's a very short repro case at the top of https://github.com/moby/buildkit/issues/3965 which should be able to verify that, and then per https://github.com/moby/buildkit/issues/3898 it might be as simple as changing the Docker config to use overlay2, although that should be the default already...

Either way, it might help for further investigation to log the output of docker info.