2024-06-13 03:26 PM
Hi everyone,
I have been trying to get Docker running on the STM32MP135F-DK for quite some time now and have been running into some issues. I originally built an image for the STM32MP135F-DK with the Mickledore release by following this tutorial: Link. However, I kept running into issues trying to get Docker to run correctly. I was able to create an image successfully and install Docker-CE, however it seems the meta-virtualization layer is no longer supported for Mickledore so getting Docker to run correctly with Mickledore does not seem to be possible anymore. I can install Docker-CE and run docker commands, however starting the Docker "hello-world" container I get an error saying "ERROR: http: invalid Host header" after downloading the container. I know we have configured the kernel correctly (we have created images with the Dunfell branch on the STM32MP157 series and got docker to run containers correctly) so I do not think that is the issue.
I saw that Kirkstone was still supported by meta-virtualization and is LTS so I tried the Kirkstone branch of meta-st-stm32mp1, however trying to build the image with bitbake I run into some build errors. I was able to successfully build Mickledore and Dunfell by just including the meta-st-stm32mp1 layer to my basic poky directory structure (refer to the previous tutorial link), however using the same method and including the Kirkstone branch of meta-st-stm32mp1 the build fails here:
ERROR: u-boot-stm32mp-v2021.10-stm32mp-r2-r0 do_compile: oe_runmake failed ERROR: u-boot-stm32mp-v2021.10-stm32mp-r2-r0 do_compile: ExecutionError('/home/ubuntu/stm32mp1dev/build/tmp/work/stm32mp1-poky-linux-gnueabi/u-boot-stm32mp/v2021.10-stm32mp-r2-r0/temp/run.do_compile.1968416', 1, None, None)
I found this article on the error: Link but it seems changing their VM version fixed the issue, however we are using Ubuntu 20.04 (could be a version issue?) on an x86 laptop so I do not think his fix applies.
At the end of the day, I would like to have the Docker-CE running on the STM32MP135F-DK on whatever release of Yocto is necessary. Our company eventually would like to have a custom board with STM32MP131DAG7 running Docker, so we would like to see Docker running on the STM32MP135F-DK before we start to go more into this project. Any information on how I should setup my Yocto build directory for Docker-CE running on STM32MP135F-DK is helpful.
I would also like to mention I have also followed this article: STM32MP1 Distribution Package - stm32mpu to originally build openstlinux-6.1-yocto-mickledore-mp1-v23.06.21, but it kept failing to compile. I also could not get openstlinux-5.15-yocto-kirkstone-mp1-v22.11.23 to build either because "repo sync" is not able to pull all the Git files successfully.
Sorry this is a bit long winded, I have tried many different ways to try and get Docker running on this discovery board so I have lots of details to explain. Thank you for any details you can provide.
2024-06-21 07:54 AM
Hello @devinschubert14,
I will try to answer to your questions:
it seems the meta-virtualization layer is no longer supported for Mickledore
It seems that meta-virtualization has a mickledore branch which makes me think it supports mickledore : https://git.yoctoproject.org/meta-virtualization/log/?h=mickledore
Could you please elaborate ?
the build fails here:
ERROR: u-boot-stm32mp-v2021.10-stm32mp-r2-r0 do_compile: [....] run.do_compile.1968416
This line explains there is an error : the lines just above this error message would help to understand the error.
build openstlinux-6.1-yocto-mickledore-mp1-v23.06.21, but it kept failing to compile
Feel free to share the compilation error.
"repo sync" is not able to pull all the Git files successfully.
The logs would help to understand the problem.
BR,
Christophe