knightcrawler-stremio / knightcrawler

A selfhosted Stremio addon
Apache License 2.0
254 stars 38 forks source link

Make the project a little easier to use for Raspberry Pi users #23

Closed purple-emily closed 6 months ago

purple-emily commented 6 months ago

For example, the docker.io/bitnami/mongodb:7.0 image does not support linux/arm64.

We don't have to change much to get this running on a Raspberry Pi. Either adding some information to the README.md or adding comments to the docker-compose file would do the trick.

I suggest doing both.

I'll make some changes and add a pull request as a suggestion.

purple-emily commented 6 months ago

Happy to add some more changes to the pull request before I tag it as done, if anyone has any suggestions.

Gabisonfire commented 6 months ago

Thank you for this PR, you can add this: If your CPU doesn't support avx instructions (grep avx /proc/cpuinfo), you will need to use a version of mongodb < 5. ex: image: mongo:4.4.6

purple-emily commented 6 months ago

Good idea!

purple-emily commented 6 months ago

On my R Pi 5 the AVX isn't listed in the cpuinfo features

processor       : 0
BogoMIPS        : 108.00
Features        : fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm lrcpc dcpop asimddp
CPU implementer : 0x41
CPU architecture: 8
CPU variant     : 0x4
CPU part        : 0xd0b
CPU revision    : 1

processor       : 1
BogoMIPS        : 108.00
Features        : fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm lrcpc dcpop asimddp
CPU implementer : 0x41
CPU architecture: 8
CPU variant     : 0x4
CPU part        : 0xd0b
CPU revision    : 1

processor       : 2
BogoMIPS        : 108.00
Features        : fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm lrcpc dcpop asimddp
CPU implementer : 0x41
CPU architecture: 8
CPU variant     : 0x4
CPU part        : 0xd0b
CPU revision    : 1

processor       : 3
BogoMIPS        : 108.00
Features        : fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm lrcpc dcpop asimddp
CPU implementer : 0x41
CPU architecture: 8
CPU variant     : 0x4
CPU part        : 0xd0b
CPU revision    : 1

Revision        : 000000
Serial          :  000000000000000
Model           : Raspberry Pi 5 Model B Rev 1.0

and I've got Mongo 6 running. Maybe a more robust checking method is needed?

purple-emily commented 6 months ago

It appears this is only an issue on the amd64 platforms. The specific linux/arm64 versions don't require it. So maybe not needed to add it at all?

https://stackoverflow.com/questions/71450663/can-we-run-avx-required-software-without-having-it

See the top answer.

In our case it works at the end also without the --platform, only with changing the image name from mongo to arm64v8/mongo.

purple-emily commented 6 months ago

I'm going to add this in a FAQ section for general error messages

purple-emily commented 6 months ago

@Gabisonfire See https://github.com/Gabisonfire/torrentio-scraper-sh/pull/24/commits/929d2969aa64661be5ae9e1e065d2fb499a16d70

Can you think of anything else that you'd like adding?

purple-emily commented 6 months ago

I've caught something, Need to change the volumes when we change the image. Let me add some more info and I'll push it

Gabisonfire commented 6 months ago

I added a few comments (some stuff I was planning on doing) if you don't mind :)

purple-emily commented 6 months ago

I added a few comments (some stuff I was planning on doing) if you don't mind :)

Sounds good, I think the pull request can be merged whenever you are ready. Anything more that I can think of will go beyond the scope of this issue

Gabisonfire commented 6 months ago

Seems it's still missing the reverse proxy article and docker/docker-compose for the quick start

purple-emily commented 6 months ago

Where did you add them? I can't see them either

Gabisonfire commented 6 months ago

before your last commit as a "review", see the PR

purple-emily commented 6 months ago

I can't see the review, I don't know why. Perhaps a permission I am missing

Gabisonfire commented 6 months ago

I'll write it here instead, just wanted to add these two:

I'd add

Install [Docker](https://docs.docker.com/engine/install/)
Install [docker-compose](https://docs.docker.com/compose/install/)

Was thinking of adding some "Hosting on LAN" basic instructions since you need a valid cert like: https://leangaurav.medium.com/simplest-https-setup-nginx-reverse-proxy-letsencrypt-ssl-certificate-aws-cloud-docker-4b74569b3c61