Zwave2mqtt: [question] Docker error Raspberry Pi Zero pulls wrong arch, armv6 vs armv7

Created on 20 Oct 2020  路  11Comments  路  Source: OpenZWave/Zwave2Mqtt

I'll assume that the problem is mine, but I can't find the answer. It took substantial digging to figure out the core problem, if not the root problem. This seems more like a forum question, and possibly a generic docker question, but I'm not sure what forum to use and hope I can get at least a lead, if not a solution here.

I am running Zwave2Mqtt on a Raspberry Pi Zero-W running Rasbian Lite. Docker is installed with:

curl -fsSL https://get.docker.com | sh

The symptom is docker (and docker-compose) exiting without producing any output. No errors, no logs, nothing. I eventually figured out how to find the exit code: 139, SEGV or similar.

More digging leads me to believe that the problem is using an image that isn't armv6 compatible.

I had been using 3.0.2 which has a single build for armv6 and armv7. 3.0.3 onward have separate builds for the two architectures and 3.0.3 didn't work. arm32v6-3.0.3 does work. I eventually figured out how to specify a sha256 when doing a docker pull and was able to get 4.0.5 running.

My core question is, why is docker pulling for arm7 instead of arm6 and how do I fix it?

Any pointers would be greatly appreciated.

Thank you!

/home/pi $ docker version
Client: Docker Engine - Community
 Version:           19.03.8
 API version:       1.40
 Go version:        go1.12.17
 Git commit:        afacb8b
 Built:             Wed Mar 11 01:35:24 2020
 OS/Arch:           linux/arm
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.8
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.17
  Git commit:       afacb8b
  Built:            Wed Mar 11 01:29:22 2020
  OS/Arch:          linux/arm
  Experimental:     false
 containerd:
  Version:          1.2.13
  GitCommit:        7ad184331fa3e55e52b890ea95e65ba581ae3429
 runc:
  Version:          1.0.0-rc10
  GitCommit:        dc9208a3303feef5b3839f4323d9beb36df0a9dd
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683
lib problem question

Most helpful comment

You should be able to adapt these to zwave2mqtt easily. If not, let me know and I will guide you trough :)

Ah sorry re-reading it might not have been clear. This for sure is a local environment issue and has nothing to do with Zwave2MQTT.

@j3kestrel should be the doing these actions. He is the you in the above quote :)

It might be nice to include the instructions somewhere since it a known issue and has been known for quite some time (2017)

All 11 comments

@chrisns Do you know what could cause this?

@j3kestrel We use docker buildx to build and push multi-arch images on docker-hub. I dunno what could cause this kind of problems and if there is one it could be something related to buildx? Could you please try to delete all your local images about zwave2mqtt, and retry with latest 4.0.5 version?

We do build and push linux/arm/v6
You could perhaps try pulling the codebase and building it yourself and compare the image metadata
I've not got a pi zero to hand to test myself

This is a common problem on armv6 there seems something wrong with Docker. I ran into this with Rhasspy, they have these instructions in their manual:
https://rhasspy.readthedocs.io/en/latest/installation/#raspberry-pi-zero

You should be able to adapt these to zwave2mqtt easily. If not, let me know and I will guide you trough :)

@wilmardo Sorry but based on https://rhasspy.readthedocs.io/en/latest/installation/#raspberry-pi-zero shouldn't be you to do that? I mean, you should enable experimental features on your docker instance so the image pulled is the correct one?

You should be able to adapt these to zwave2mqtt easily. If not, let me know and I will guide you trough :)

Ah sorry re-reading it might not have been clear. This for sure is a local environment issue and has nothing to do with Zwave2MQTT.

@j3kestrel should be the doing these actions. He is the you in the above quote :)

It might be nice to include the instructions somewhere since it a known issue and has been known for quite some time (2017)

@wilmardo I'm ok to add it to docs, but based on my experience I know 90% of users don't read docs at all, so since this is just related to Rpi zero I will change the title of the issue, hopefully users will find this issue once they are opening a new one. Thanks for your findings about this problem :)

Raspberry Pi 1 is also affected, no need to put it in the title but this message should make it available in the search :)

Thanks again @wilmardo :+1:

I'll try the work-around suggested in @wilmardo's rhasspy link and summarize results.

I had the same issue on a Pi Zero, found this thread, and was able to fix it by:

Thanks folks!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

twochannel picture twochannel  路  7Comments

lsilva171 picture lsilva171  路  6Comments

christoph-luebbe picture christoph-luebbe  路  8Comments

oddgili picture oddgili  路  7Comments

hostrup picture hostrup  路  4Comments