madiele / vod2pod-rss

Vod2Pod-RSS converts a YouTube or Twitch channel into a podcast with ease. It creates a podcast RSS that can be listened to directly inside any podcast client. VODs are transcoded to MP3 on the fly and no server storage is needed!
MIT License
202 stars 4 forks source link

no matching manifest for linux/arm/v6 in the manifest list entries #139

Open primeapple opened 6 months ago

primeapple commented 6 months ago

app version: 1.1.0


issue description:

I want to set up vod2pod on my raspberry pi 1b. It is running raspbian on a 32bit architecture. When I try to run vod2pod via docker I get the following:

> sudo docker compose up -d
[+] Running 0/3
 ⠴ redis Pulling                                                                                                                                                                                                                           7.5s 
 ⠴ api_keys Pulling                                                                                                                                                                                                                        7.5s 
 ⠼ vod2pod Pulling                                                                                                                                                                                                                         7.5s 
no matching manifest for linux/arm/v6 in the manifest list entries
madiele commented 6 months ago

I don't offer images for arm v6, you need to build it, do a sudo docker compose build on your pi instead, don't use pull. Let me know if it works, I don't have an armv6 to test it out so I'm not sure the dockerfile will work as it is, it should but I'm not 100% certain

Be prepared for a pretty long build time

madiele commented 6 months ago

After you did the build command successfully, the up command should work

madiele commented 6 months ago

Sorry, just noticed I did not put the build section in the docker compose, you will have to add it yourself (I'm not near a pc to do it right now sorry)

build:
  dockerfile: ./Dockerfile
  context: https://github.com/madiele/vod2pod-rss.git

Adding something like this to the vod2pod section and then doing a docker compose build vod2pod should do the trick. Mess around with it and report back if you manage to make it work, chatgpt should be able to help you with the syntax if you need.

When I can get to a pc in the next few days I'll add the section commented out to make it easier

primeapple commented 6 months ago

Thanks for your advice. I tried it and it looks the following

 => [vod2pod internal] load git source https://github.com/madiele/vod2pod-rss.git                                                                                                                                                         30.8s
 => CANCELED [vod2pod internal] load metadata for docker.io/library/debian:bookworm-slim                                                                                                                                                   4.6s 
 => ERROR [vod2pod internal] load metadata for docker.io/library/rust:1.74                                                                                                                                                                 4.4s 
------                                                                                                                                                                                                                                          
 > [vod2pod internal] load metadata for docker.io/library/rust:1.74:                                                                                                                                                                            
------                                                                                                                                                                                                                                          
failed to solve: rust:1.74: no match for platform in manifest sha256:fd45a543ed41160eae2ce9e749e5b3c972625b0778104e8962e9bfb113535301: not found                                                                                                

No rust container for old raspberries, I guess?

madiele commented 6 months ago

Well that sucks, I guess you could try to edit the vod2pod-rss Dockerfile to use ubuntu as a base instead (hoping that that has a armv6 image ready 😂) of rust and run the rustup script before anything else, you will have to thinker a little sorry.

It also mean I cannot support armv6 officially, if you manage to get it working maybe I'll link this issue in the Readme.

Let me know if you get something working ✌️

madiele commented 5 months ago

@primeapple just had an idea:

I do support building vod2pod outside the container (I only do it for development purpose so it's documented only inside the CONTRIBUTING.md), maybe that would work for you

cd inside the folder where you cloned vod2pod-rss

then run make install-ubuntu-deps followed by make run

does that work? if it does you will find a .env file generated where you can set your api keys.

this will run vod2pod on port 8080 on your host, there is no way to change the port at the moment but I can add one if someone needs it.

you can then ask chatgpt to make you a Dockerfile to automate those tasks based on an ubuntu image that supports armv6 and just overwrite the Dockerfile that is present in the repo, note that of course this will not be an official way to deploy vod2pod supported by me (to many variables that could go wrong 😅 )