I am using OpenEmbedded/yocto to build an image for an arm-based docker host. I have it mostly working, but I think there is a problem with how the resulting host handles filesystem overlays.
I’ve written a simple shell script that highlights my problem:
docker build -t test - <<"EOF" FROM alpine RUN touch /usr/bin/bogus EOF docker run -it --rm test sh -c "whoami && echo PASS || echo FAIL" docker rmi test
Running this test on my docker-enabled ubuntu desktop causes the “PASS” message to appear, while running this test on my yocto-based host causes “FAIL”.
The test tries to build a new image based on alpine (which is available for both x86_64 and armhf architectures) and adds a file to /usr/bin. For some reason, on my yocto-based host, this causes containers spun from the image to only include the new file in /usr/bin.