Hi,
I'm currently trying to setup edumeet for testing purposes in a Kubernetes cluster. Unfortunately, there is no documented case of someone doing this and that might be the reason why it feels like I'm struggling throughout the whole process. Given that I might have something completely misunderstood, here's my issue:
Since I have no interest in hosting another proxy in my cluster besides the main one already in place, my approach is to let my already existing traefik handle the work nginx does in the docker-compose setup. This means that I have an ingress-route deployed, and separate deployments for each component (management-server, client, media-node, ...). The problem I'm facing right now does not arise from that though, but rather from the docker images themselves, particularly that one from the management-server.
In the Kubernetes community, usually one can rely on the fact that the docker images provided are intended for production use. As far as I can see, this is not the case here. Clearly, a yarn dev as entrypoint in the image seems misplaced (dockerfile, latest build on dockerhub does the same, as well as the most up to date build on dockerhub). Besides the antipattern to deliver files with the dev tool nodemon (yarn dev executes this command), this causes issues in Kubernetes. Since nodemon creates file-watchers to trigger server reloads in a dev environment, when I try to run that image in my cluster, the container breaks with Internal watch failed: EMFILE: too many open files, watch '/usr/src/app'. I could raise the bar of open filewatchers, but this would not solve the underlying issue that I don't need to watch files if I run the image as a 'production' workload (that has no interest at all to in file changes and server-reloads).
The main issue I'm trying to wrap my head around is that I simply don't understand why you start the container with yarn dev when you have the proper production ready command start already in place. Are these images intended for dev usage only? Shouldn't they, then, be labeled as 'stable-dev-build' or something alike? The current naming scheme '4.1-20250926-stable' seems very misleading.
Help or some general guidance would be greatly appreciated. Thanks :)
Hi,
I'm currently trying to setup edumeet for testing purposes in a Kubernetes cluster. Unfortunately, there is no documented case of someone doing this and that might be the reason why it feels like I'm struggling throughout the whole process. Given that I might have something completely misunderstood, here's my issue:
Since I have no interest in hosting another proxy in my cluster besides the main one already in place, my approach is to let my already existing traefik handle the work nginx does in the docker-compose setup. This means that I have an ingress-route deployed, and separate deployments for each component (management-server, client, media-node, ...). The problem I'm facing right now does not arise from that though, but rather from the docker images themselves, particularly that one from the management-server.
In the Kubernetes community, usually one can rely on the fact that the docker images provided are intended for production use. As far as I can see, this is not the case here. Clearly, a
yarn devas entrypoint in the image seems misplaced (dockerfile, latest build on dockerhub does the same, as well as the most up to date build on dockerhub). Besides the antipattern to deliver files with the dev tool nodemon (yarn devexecutes this command), this causes issues in Kubernetes. Since nodemon creates file-watchers to trigger server reloads in a dev environment, when I try to run that image in my cluster, the container breaks withInternal watch failed: EMFILE: too many open files, watch '/usr/src/app'. I could raise the bar of open filewatchers, but this would not solve the underlying issue that I don't need to watch files if I run the image as a 'production' workload (that has no interest at all to in file changes and server-reloads).The main issue I'm trying to wrap my head around is that I simply don't understand why you start the container with
yarn devwhen you have the proper production ready commandstartalready in place. Are these images intended for dev usage only? Shouldn't they, then, be labeled as 'stable-dev-build' or something alike? The current naming scheme '4.1-20250926-stable' seems very misleading.Help or some general guidance would be greatly appreciated. Thanks :)