xbvr icon indicating copy to clipboard operation
xbvr copied to clipboard

Update github workflows to build docker containers and build arm7, arm8 and x86_64 containers.

Open Tweeticoats opened this issue 4 years ago • 5 comments

This updates the github actions and creates a docker build action. This uses buildx to build the container for arm7, arm 8 and x86_64 in parallel and pushes this to the docker hub. This should resolve #252

To use this you need to configure secrets in github to pass the username and password to login to the docker hub. To configure this under the github repository settings > Secrets > Action Secrets, and create 2 new secrets. DOCKERHUB_USERNAME DOCKERHUB_TOKEN

Tweeticoats avatar May 11 '21 14:05 Tweeticoats

@Tweeticoats looks sweet, I already made some first steps towards moving to Github Actions so I'll need to review and merge these two efforts together

cld9x avatar May 23 '21 11:05 cld9x

Thanks @Tweeticoats for the code.

I just changed my setup to ARM and realised the docker image was only for amd64 :( Fortunately I took your commit to make a customised one, and not knowing what was Github actions until today some searching on the web helped me adapt the code and get a working docker image for arm running :D

I just got it working but noticed that ffprobe will not work, giving the error time="2021-07-11T14:05:56Z" level=error msg="Error running ffprobe/...fork/exec /root/.config/xbvr/bin/ffprobe: exec format error. I guess it's expecting a amd64 instruction? Just wanted to share that in case ffprobe has not been tested yet on a ARM docker image.

Cheers

ghost avatar Jul 11 '21 14:07 ghost

@atani12 Good point, this does not fix downloading ffprobe and ffmpeg for x86_64 and that does not work on arm. The workaround is to download static ffmpeg binaries from https://johnvansickle.com/ffmpeg/ and place this in the bin folder. This is what xbvr does first startup and it is something that I did manually the first time and forgot about it. So there will need to be a change to xbvr to see what architecture it is running under and download the right ffmpeg.

docker cp ffprobe xbvr:/root/.config/xbvr/bin/ docker cp ffmpeg xbvr:/root/.config/xbvr/bin/

Tweeticoats avatar Jul 13 '21 14:07 Tweeticoats

Thanks for the workaround :)

ghost avatar Jul 15 '21 20:07 ghost

The code is in there to pull the correct binaries for ARM. Maybe you pointed ARM docker to your already existing AMD64 folders?

Just delete what's in bin, it should download new binaries?

theRealKLH avatar Aug 17 '21 22:08 theRealKLH

pull request no longer useful

Tweeticoats avatar Feb 04 '23 00:02 Tweeticoats