Skip to content

Commit d1fda7c

Browse files
author
shajen
committed
Added multi architecture docker build.
1 parent ef7ffd4 commit d1fda7c

File tree

2 files changed

+14
-8
lines changed

2 files changed

+14
-8
lines changed

.github/workflows/main.yml

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,22 +21,20 @@ jobs:
2121
uses: actions/checkout@v3
2222
- name: Docker info
2323
run: docker info
24-
- name: Build docker image
24+
- name: Build sdr-scanner
2525
run: |
2626
echo "constexpr auto GIT_COMMIT = \"$(git rev-parse HEAD)\";" > sources/version.h
2727
echo "constexpr auto GIT_TAG = \"$(git describe --tags)\";" >> sources/version.h
28-
docker build -t sdr-scanner-test -f Dockerfile . --target test
29-
docker build -t sdr-scanner -f Dockerfile .
28+
docker build -t sdr-scanner-test --target test .
29+
docker build -t sdr-scanner .
3030
- name: Test sdr-scanner
3131
run: docker run --rm sdr-scanner-test
3232
- name: Run sdr-scanner
3333
run: docker run --rm sdr-scanner
34-
- name: Deploy sdr-scanner tag
34+
- name: Deploy sdr-scanner
3535
if: github.ref_type == 'tag'
3636
run: |
3737
TAG=${GITHUB_REF_NAME/v/}
3838
docker login -u ${{ secrets.DOCKER_HUB_USERNAME }} -p ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} docker.io
39-
docker image tag sdr-scanner docker.io/shajen/sdr-scanner:$TAG
40-
docker image tag sdr-scanner docker.io/shajen/sdr-scanner
41-
docker push docker.io/shajen/sdr-scanner:$TAG
42-
docker push docker.io/shajen/sdr-scanner
39+
docker buildx create --use || true
40+
docker buildx build --platform linux/arm/v7,linux/arm64/v8,linux/amd64 -t docker.io/shajen/sdr-scanner:$TAG -t docker.io/shajen/sdr-scanner --push .

README.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,14 @@ blacklist rtl2832_sdr
6767
blacklist rtl8xxxu
6868
```
6969

70+
## RaspberryPi
71+
72+
Docker version should work on `RaspberryPi`, but keep in mind that `RaspberryPi` is **not powefull machine** and is **not good** for sdr data processing. `sdr` device can produce **40 megabytes per second**! It's a lot of data for `RaspberryPi` to processing in real time. It's a lot of data even for some desktop computers.
73+
74+
If you still want to do this, please replace the `SD` card with a fast one and make sure you have a strong version of `RaspberryPi`.
75+
76+
Better idea is to build `sdr-scanner` from sources via `cmake` and run natively on `RaspberryPi`. Next run `sdr-monitor` and `mqtt-broker` on any other machine (even in the cloud) and connect `sdr-scanner` to them (you have to set valid mqtt data in `config.json` and maybe manipulate in `docker-compose.yml`).
77+
7078
## Noise learner
7179

7280
To auto-detect transmissions, sdr scanner has to learn noise level every run. It takes first `n` seconds (defined in `config.json` as `noise_learning_time_seconds` default is `30` seconds). So if any transmission will appear in this period it's may not be detected by scanner later.

0 commit comments

Comments
 (0)