[yocto] Running Docker

Bruce Ashfield bruce.ashfield at windriver.com
Fri Feb 2 08:14:20 PST 2018


On 2018-02-02 10:57 AM, Jakob Hasse wrote:
> Hello Bruce,
> 
> Thank you for the advice with the morty branch, this worked perfectly.
> 
> Now, however, docker is installed on my Yocto-system but I can't run it:
> 
> ~# docker
> -sh: /usr/bin/docker: No such file or directory

I've seen this before. It normally means that the executable isn't
in a format that your target recognizes. It could very well be the
go support in the older branch isn't building the right thing.

What does 'file' say about the executable ?

Bruce

> 
> Is "docker" the client to control and run containers (e.g. "docker run 
> hello-world")?
> On my Ubuntu machine, this works, I installed docker and docker.io via 
> apt, then I could run "docker run hello-world".
> 
> All the Best and many thanks in advance!
> Jakob
> 
> On 26.01.2018 14:05, Bruce Ashfield wrote:
>> On 2018-01-26 6:52 AM, Jakob Hasse wrote:
>>> Hello,
>>>
>>> we're trying to include meta-virtualization in to our project, in 
>>> particular, we want to use docker. However, as soon as I include the 
>>> layer in to our project, bitbake complains:
>>>
>>> bitbake -C compile core-image-base
>>> NOTE: Started PRServer with DBfile: 
>>> /home/jakob/workspace/beerstation/cache/prserv.sqlite3, IP: 
>>> 127.0.0.1, PORT: 46136, PID: 5713
>>> ERROR: Execution of event handler 'virt_bbappend_distrocheck' failed
>>> Traceback (most recent call last):
>>>    File 
>>> "/usr/local/dey-2.2/sources/meta-virtualization/classes/sanity-meta-virt.bbclass", 
>>> line 4, in virt_bbappend_distrocheck(e=<bb.event.SanityCheck object 
>>> at 0x7f945e05d3c8>):
>>>       python virt_bbappend_distrocheck() {
>>>      >    skip_check = e.data.getVar('SKIP_META_VIRT_SANITY_CHECK') 
>>> == "1"
>>>           if 'virtualization' not in 
>>> e.data.getVar('DISTRO_FEATURES').split() and not skip_check:
>>> TypeError: getVar() missing 1 required positional argument: 'expand'
>>>
>>> ERROR: Command execution failed: Traceback (most recent call last):
>>>    File "/usr/local/dey-2.2/sources/poky/bitbake/lib/bb/command.py", 
>>> line 101, in runAsyncCommand
>>>      self.cooker.updateCache()
>>>    File "/usr/local/dey-2.2/sources/poky/bitbake/lib/bb/cooker.py", 
>>> line 1627, in updateCache
>>>      bb.event.fire(bb.event.SanityCheck(False), 
>>> self.databuilder.mcdata[mc])
>>>    File "/usr/local/dey-2.2/sources/poky/bitbake/lib/bb/event.py", 
>>> line 201, in fire
>>>      fire_class_handlers(event, d)
>>>    File "/usr/local/dey-2.2/sources/poky/bitbake/lib/bb/event.py", 
>>> line 124, in fire_class_handlers
>>>      execute_handler(name, handler, event, d)
>>>    File "/usr/local/dey-2.2/sources/poky/bitbake/lib/bb/event.py", 
>>> line 96, in execute_handler
>>>      ret = handler(event)
>>>    File 
>>> "/usr/local/dey-2.2/sources/meta-virtualization/classes/sanity-meta-virt.bbclass", 
>>> line 4, in virt_bbappend_distrocheck
>>>      skip_check = e.data.getVar('SKIP_META_VIRT_SANITY_CHECK') == "1"
>>> TypeError: getVar() missing 1 required positional argument: 'expand'
>>>
>>>
>>> Summary: There were 2 ERROR messages shown, returning a non-zero exit 
>>> code.
>>>
>>>
>>> Do we need to checkout a specific branch or so (though I can't find 
>>> one right now)?
>>> Do we need to change some kernel configuration? I added all 
>>> virtualization drivers in the "drivers" section of the kernel config 
>>> already.
>>>
>>> We're using DIGI embedded Yocto 2.2 (poky).
>>>
>>
>> You need to check out the matching branch to the release you've
>> been given as an enablement, since some of the APIs, etc, have
>> changed and the meta-virt sanity check that was added later than
>> the 2.2 release isn't working.
>>
>> 2.2 was the 'morty' release, and meta-virt does have a branch for
>> that:
>>
>> ----------
>> % git whatchanged origin/morty
>>
>> commit eb6b5129561eda9ea1f47e85ab9ed9e5a6b8f64c
>> Author: Fabio Berton <fabio.berton at ossystems.com.br>
>> Date:   Tue Nov 28 09:15:59 2017 -0200
>>
>>     python-*: use https for pypi URLs
>>
>>     Several of the recipes here were using http URLs for source hosted on
>>     pypi - pypi apparently no longer supports http so switch to https
>>     instead.
>>
>>     Apply this commit [1] to morty branch.
>>     [1] 
>> https://www.mail-archive.com/meta-virtualization@yoctoproject.org/msg02821.html 
>>
>>
>>     Signed-off-by: Fabio Berton <fabio.berton at ossystems.com.br>
>>     Signed-off-by: Bruce Ashfield <bruce.ashfield at windriver.com>
>> ---------
>>
>> So check out the morty branch and you'll have better luck.
>>
>> Bruce
>>
>>
>>> Thanks and all the best,
>>> Jakob
>>>
>>
> 




More information about the yocto mailing list