seanauff / metermon

Dockerized rtlamr wrapper that outputs formatted JSON messages over mqtt
MIT License
66 stars 12 forks source link

(linux/arm/v7) does not match the detected host platform (linux/arm64/v8) #30

Closed toddpage closed 6 months ago

toddpage commented 1 year ago

I get the following error when running the docker ARM version on Raspberry Pi 3B+:

WARNING: The requested image's platform (linux/arm/v7) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
43297b942167eed56f17bc5b70a7871a4f61b8a84d74b237efbdcdf34acac547

Here is the docker run script:

docker run -d -e MQTT_BROKER_HOST=xxx.xxx.xxx.xxx -e RTL_TCP_SERVER=xxx.xxx.xxx.xxx:1234 seanauff/metermon:arm

and

docker run -d -e MQTT_BROKER_HOST=xxx.xxx.xxx.xxx -e RTL_TCP_SERVER=xxx.xxx.xxx.xxx:1234 -e RTLAMR_MSGTYPE:scm seanauff/metermon:arm

seanauff commented 1 year ago

My best guess is that this is because I haven't rebuilt the arm image in awhile. I'm having some trouble getting my RPi to cooperate at the moment (and I still haven't figured out multi arch image building), so quickest way for you to get operational would be to build the image yourself (described in the README). This will ensure it works with your setup.

toddpage commented 1 year ago

Tried the build the image and get the same and following errors during the process.

debconf: delaying package configuration, since apt-utils is not installed

Failed building wheel for paho-mqtt

Cloning into '/go/src/github.com/bemasher/rtlamr'...
Cloning into '/go/src/github.com/bemasher/rtltcp'...
Cloning into '/go/src/github.com/pkg/errors'...
go: downloading github.com/bemasher/rtltcp v0.0.0-20151011062038-3aed81c166c5
go: downloading github.com/pkg/errors v0.8.1
go: downloading golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898

Here is data returned when running the build.

Sending build context to Docker daemon  154.6kB
Step 1/8 : FROM golang:buster
buster: Pulling from library/golang
15639959ffec: Pull complete 
81ef007f1599: Pull complete 
58deacb177a2: Pull complete 
26774fe15380: Pull complete 
cd1d12ebff94: Pull complete 
353340a7efe3: Pull complete 
0ae9ae4e5166: Pull complete 
Digest: sha256:150a98859da4c88935958d21d4fca1c74a139eac88e1eb2364c8f60d69236ede
Status: Downloaded newer image for golang:buster
 ---> 6f6fd2ed9ef8
Step 2/8 : RUN apt-get update && apt-get install -y --no-install-recommends     python3     python3-setuptools     python3-pip     wget     git
 ---> Running in 4de878d335f7
Get:1 http://deb.debian.org/debian buster InRelease [122 kB]
Get:2 http://deb.debian.org/debian-security buster/updates InRelease [34.8 kB]
Get:3 http://deb.debian.org/debian buster-updates InRelease [56.6 kB]
Get:4 http://deb.debian.org/debian buster/main arm64 Packages [7737 kB]
Get:5 http://deb.debian.org/debian-security buster/updates/main arm64 Packages [414 kB]
Get:6 http://deb.debian.org/debian buster-updates/main arm64 Packages [8780 B]
Fetched 8373 kB in 9s (923 kB/s)
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
wget is already the newest version (1.20.1-1.1).
git is already the newest version (1:2.20.1-2+deb10u6).
The following additional packages will be installed:
  libmpdec2 libpython3-stdlib libpython3.7-minimal libpython3.7-stdlib
  python-pip-whl python3-distutils python3-lib2to3 python3-minimal
  python3-pkg-resources python3.7 python3.7-minimal
Suggested packages:
  python3-doc python3-tk python3-venv python-setuptools-doc python3.7-venv
  python3.7-doc binfmt-support
Recommended packages:
  build-essential python3-dev python3-wheel
The following NEW packages will be installed:
  libmpdec2 libpython3-stdlib libpython3.7-minimal libpython3.7-stdlib
  python-pip-whl python3 python3-distutils python3-lib2to3 python3-minimal
  python3-pip python3-pkg-resources python3-setuptools python3.7
  python3.7-minimal
0 upgraded, 14 newly installed, 0 to remove and 1 not upgraded.
Need to get 6597 kB of archives.
After this operation, 28.4 MB of additional disk space will be used.
Get:1 http://deb.debian.org/debian-security buster/updates/main arm64 libpython3.7-minimal arm64 3.7.3-2+deb10u4 [588 kB]
Get:2 http://deb.debian.org/debian-security buster/updates/main arm64 python3.7-minimal arm64 3.7.3-2+deb10u4 [1404 kB]
Get:3 http://deb.debian.org/debian buster/main arm64 python3-minimal arm64 3.7.3-1 [36.6 kB]
Get:4 http://deb.debian.org/debian buster/main arm64 libmpdec2 arm64 2.4.2-2 [77.7 kB]
Get:5 http://deb.debian.org/debian-security buster/updates/main arm64 libpython3.7-stdlib arm64 3.7.3-2+deb10u4 [1641 kB]
Get:6 http://deb.debian.org/debian-security buster/updates/main arm64 python3.7 arm64 3.7.3-2+deb10u4 [330 kB]
Get:7 http://deb.debian.org/debian buster/main arm64 libpython3-stdlib arm64 3.7.3-1 [20.0 kB]
Get:8 http://deb.debian.org/debian buster/main arm64 python3 arm64 3.7.3-1 [61.5 kB]
Get:9 http://deb.debian.org/debian buster/main arm64 python-pip-whl all 18.1-5 [1591 kB]
Get:10 http://deb.debian.org/debian buster/main arm64 python3-lib2to3 all 3.7.3-1 [76.7 kB]
Get:11 http://deb.debian.org/debian buster/main arm64 python3-distutils all 3.7.3-1 [142 kB]
Get:12 http://deb.debian.org/debian buster/main arm64 python3-pip all 18.1-5 [171 kB]
Get:13 http://deb.debian.org/debian buster/main arm64 python3-pkg-resources all 40.8.0-1 [153 kB]
Get:14 http://deb.debian.org/debian buster/main arm64 python3-setuptools all 40.8.0-1 [306 kB]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 6597 kB in 2s (3125 kB/s)
Selecting previously unselected package libpython3.7-minimal:arm64.
(Reading database ... 15394 files and directories currently installed.)
Preparing to unpack .../libpython3.7-minimal_3.7.3-2+deb10u4_arm64.deb ...
Unpacking libpython3.7-minimal:arm64 (3.7.3-2+deb10u4) ...
Selecting previously unselected package python3.7-minimal.
Preparing to unpack .../python3.7-minimal_3.7.3-2+deb10u4_arm64.deb ...
Unpacking python3.7-minimal (3.7.3-2+deb10u4) ...
Setting up libpython3.7-minimal:arm64 (3.7.3-2+deb10u4) ...
Setting up python3.7-minimal (3.7.3-2+deb10u4) ...
Selecting previously unselected package python3-minimal.
(Reading database ... 15634 files and directories currently installed.)
Preparing to unpack .../python3-minimal_3.7.3-1_arm64.deb ...
Unpacking python3-minimal (3.7.3-1) ...
Selecting previously unselected package libmpdec2:arm64.
Preparing to unpack .../libmpdec2_2.4.2-2_arm64.deb ...
Unpacking libmpdec2:arm64 (2.4.2-2) ...
Selecting previously unselected package libpython3.7-stdlib:arm64.
Preparing to unpack .../libpython3.7-stdlib_3.7.3-2+deb10u4_arm64.deb ...
Unpacking libpython3.7-stdlib:arm64 (3.7.3-2+deb10u4) ...
Selecting previously unselected package python3.7.
Preparing to unpack .../python3.7_3.7.3-2+deb10u4_arm64.deb ...
Unpacking python3.7 (3.7.3-2+deb10u4) ...
Selecting previously unselected package libpython3-stdlib:arm64.
Preparing to unpack .../libpython3-stdlib_3.7.3-1_arm64.deb ...
Unpacking libpython3-stdlib:arm64 (3.7.3-1) ...
Setting up python3-minimal (3.7.3-1) ...
Selecting previously unselected package python3.
(Reading database ... 16046 files and directories currently installed.)
Preparing to unpack .../0-python3_3.7.3-1_arm64.deb ...
Unpacking python3 (3.7.3-1) ...
Selecting previously unselected package python-pip-whl.
Preparing to unpack .../1-python-pip-whl_18.1-5_all.deb ...
Unpacking python-pip-whl (18.1-5) ...
Selecting previously unselected package python3-lib2to3.
Preparing to unpack .../2-python3-lib2to3_3.7.3-1_all.deb ...
Unpacking python3-lib2to3 (3.7.3-1) ...
Selecting previously unselected package python3-distutils.
Preparing to unpack .../3-python3-distutils_3.7.3-1_all.deb ...
Unpacking python3-distutils (3.7.3-1) ...
Selecting previously unselected package python3-pip.
Preparing to unpack .../4-python3-pip_18.1-5_all.deb ...
Unpacking python3-pip (18.1-5) ...
Selecting previously unselected package python3-pkg-resources.
Preparing to unpack .../5-python3-pkg-resources_40.8.0-1_all.deb ...
Unpacking python3-pkg-resources (40.8.0-1) ...
Selecting previously unselected package python3-setuptools.
Preparing to unpack .../6-python3-setuptools_40.8.0-1_all.deb ...
Unpacking python3-setuptools (40.8.0-1) ...
Setting up python-pip-whl (18.1-5) ...
Setting up libmpdec2:arm64 (2.4.2-2) ...
Setting up libpython3.7-stdlib:arm64 (3.7.3-2+deb10u4) ...
Setting up libpython3-stdlib:arm64 (3.7.3-1) ...
Setting up python3.7 (3.7.3-2+deb10u4) ...
Setting up python3 (3.7.3-1) ...
running python rtupdate hooks for python3.7...
running python post-rtupdate hooks for python3.7...
Setting up python3-lib2to3 (3.7.3-1) ...
Setting up python3-pkg-resources (40.8.0-1) ...
Setting up python3-distutils (3.7.3-1) ...
Setting up python3-setuptools (40.8.0-1) ...
Setting up python3-pip (18.1-5) ...
Processing triggers for libc-bin (2.28-10+deb10u2) ...
Processing triggers for mime-support (3.62) ...
Removing intermediate container 4de878d335f7
 ---> eccdfbefcf89
Step 3/8 : RUN pip3 install paho-mqtt
 ---> Running in 074dc28a9e1c
Collecting paho-mqtt
  Downloading https://files.pythonhosted.org/packages/f8/dd/4b75dcba025f8647bc9862ac17299e0d7d12d3beadbf026d8c8d74215c12/paho-mqtt-1.6.1.tar.gz (99kB)
Building wheels for collected packages: paho-mqtt
  Running setup.py bdist_wheel for paho-mqtt: started
  Running setup.py bdist_wheel for paho-mqtt: finished with status 'error'
  Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-gfbso_ir/paho-mqtt/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /tmp/pip-wheel-8f38x9ro --python-tag cp37:
  usage: -c [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
     or: -c --help [cmd1 cmd2 ...]
     or: -c --help-commands
     or: -c cmd --help

  error: invalid command 'bdist_wheel'

  ----------------------------------------
  Failed building wheel for paho-mqtt
  Running setup.py clean for paho-mqtt
Failed to build paho-mqtt
Installing collected packages: paho-mqtt
  Running setup.py install for paho-mqtt: started
    Running setup.py install for paho-mqtt: finished with status 'done'
Successfully installed paho-mqtt-1.6.1
Removing intermediate container 074dc28a9e1c
 ---> 9ced5f9ce846
Step 4/8 : RUN git clone https://github.com/bemasher/rtlamr.git /go/src/github.com/bemasher/rtlamr &&    git clone https://github.com/bemasher/rtltcp.git /go/src/github.com/bemasher/rtltcp &&    git clone https://github.com/pkg/errors.git /go/src/github.com/pkg/errors
 ---> Running in 2da9f835119c
Cloning into '/go/src/github.com/bemasher/rtlamr'...
Cloning into '/go/src/github.com/bemasher/rtltcp'...
Cloning into '/go/src/github.com/pkg/errors'...
Removing intermediate container 2da9f835119c
 ---> 38dd5b60025e
Step 5/8 : WORKDIR /go/src/github.com/bemasher/rtlamr
 ---> Running in 892f63998c70
Removing intermediate container 892f63998c70
 ---> da8f301be65a
Step 6/8 : RUN go install
 ---> Running in 1c00ca71c556
go: downloading github.com/bemasher/rtltcp v0.0.0-20151011062038-3aed81c166c5
go: downloading github.com/pkg/errors v0.8.1
go: downloading golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898
Removing intermediate container 1c00ca71c556
 ---> d51cc02889ee
Step 7/8 : ADD metermon.py .
 ---> 22eee1411d3e
Step 8/8 : CMD ["python3", "-u", "./metermon.py"]
 ---> Running in bf7b1e4a864e
Removing intermediate container bf7b1e4a864e
 ---> e4abd475696a
Successfully built e4abd475696a
Successfully tagged seanauff/metermon:latest
seanauff commented 1 year ago

Did you try running with the image anyway? Looks like the image still built, even with the errors.

seanauff commented 1 year ago

I managed to build a multi arch image (seanauff/metermon:latest). It's untested, but let me know if that works for you.

toddpage commented 1 year ago

Ran :

docker run -d -e MQTT_BROKER_HOST=xxx.xxx.xxx.xxx -e RTL_TCP_SERVER=xxx.xxx.xxx.xxx:1234 -e RTLAMR_MSGTYPE:scm seanauff/metermon:latest

Output:

f05fa2450a7e83ddf0d9526aae59f86e85022149ca719712c71bcfc1ad556103

No errors

But rtltcp outputs

ll+, now 0

to

ll+, now 502

pauses and starts over with the "ll+, now xxx".

seanauff commented 1 year ago

Does metermon give any output now? Another possibility for troubleshooting would be to run rtlamr standalone and see if that works.