kastldratza / zoomrec

Record Zoom meetings automatically in headless docker container with Python and FFmpeg
MIT License
265 stars 68 forks source link

Zoom crashing on startup. #32

Closed uriafranko closed 2 years ago

uriafranko commented 2 years ago

Hey guys,

Tried to run the project on Macbook M1 16GB...

The first time nothing happen the script freeze after the Failed to connect to session manager: Failed to connect to the session manager: SESSION_MANAGER environment variable not defined error.

I've logged manually to the container and tried to run zoom I received error while loading shared libraries: libnss3.so so I've added RUN apt-get update RUN apt-get install -y libnss3 to the Dockerfile, it fixed the previous error and it starting printing on loop (5min+) INFO Zoom not ready yet!

logged to the container again try to run zoom again and received zoom was exited due to a handled signal: 5 and the zoom client closed.

any ideas?

Edit: I'm running all the docker commands with --platform linux/amd64 as M1 is ARM based.

jerguslejko commented 2 years ago

same here. seems like one of the upstream deps has changed. using an older image (ghcr.io/kastldratza/zoomrec@sha256:de1f87fb0b5f18e632c71f348a85d4f3a580e1dee7553fdbab17a885837b5671) with the same source code works

kastldratza commented 2 years ago

Hi guys, Thank you very much for reporting and confirming the issue. I am already working on fixing the problem.

I have added the missing package and am currently still working on the other error. However, this one occurs before zoom was exited due to a handled signal: 5

Current issue:

Failed to move to new namespace: PID namespaces supported, network namespace supported, but failed: errno = operation not permitted

jerguslejko commented 2 years ago

I think this is caused by the latest release of the zoom client. 5.9.6 -> 5.10.0

kastldratza commented 2 years ago

Yes, that could be.

But I can't see any changes in the release notes that could be related to that. https://support.zoom.us/hc/en-us/articles/205759689

Nevertheless, I have found a way to get it running again. Just run container with --security-opt seccomp:unconfined or --cap-add=SYS_ADMIN or --privileged

kastldratza commented 2 years ago

The real problem is that Zoom now wants to execute system calls (clone, unshare) in the new version, but these are prevented by the default configuration of seccomp in the container. Therefore Zoom cannot be started anymore.

With the three parameters mentioned above the start works again. Because this allows the execution of the system calls.

uriafranko commented 2 years ago

Hey @kastldratza ,

Still having the same issue after the fix you've provided...

Any other ideas that I may try?

kastldratza commented 2 years ago

Hello @uriafranko, none of the above parameters work?

Maybe you still have the old image locally? Try docker pull kastldratza/zoomrec:latest to download the latest image and test it again.