Hi, thankyou very much for developing this plugin, it’s getting very good I’m using it on my « testing » Peertube instance, but not the Production one, because it isn’t compatible with Docker installs.
Any progress in getting it to work with Docker, with some help from someone, as you asked? Hope so, cos Livechat is the main missing Peertube feature, and should, surely, be incredibly popular, because it’s what everybody wants while Livestreaming
Not sure we can give you any help with your plugin and Docker, but in my opinion this plugin should be advertised and promoted EVERYWHERE, because it’s so awesome, get the word out about it, find someone who knows how to create Docker images.
The problem with docker is that I never used it… I think it should be really easy in fact. I assume that it is just something as «adding the prosody service in the docker compose file» (if I correctly understand how docker works).
It would be really nice if someone that knows docker can help me. Otherwise, it is on my roadmap. But I’ll have to learn how to install docker (and Peertube over docker) first…
If a docker expert see this message, here is what my plugin needs:
I did not announce it on this forum yet, i wanted to wait for some under development features. But, after all…
The plugin is now simplier to install.
You can still use it as before.
But there is a new mode: it can use directly the Prosody Server executable from Peertube. The only prerequisite is to install the Prosody package on your server.
You don’t have to configure Prosody, and you can even shutdown the service. The plugin will launch directly Prosody with custom configuration and modules.
With this mode, Prosody and Peertube can interract. Peertube moderators and admins will be owner of the rooms, the video owner will be moderator. Moderation tools are available (all common XMPP moderation tasks: kick, voice, message deletion, …).
The settings screen is still «complicated», but I have to wait the stable version of Peertube 3.2.0 to release a simplier version. It should be available in June.
Awesome stuff, yes, it’s very simple to install, integrating a Prosody executable is awesome, because, I’ll be honest, we don’t have any experience with XMPP/Prosody, so would have difficulty setting this up without you doing this. I think what you have done, and are doing, is truly awesome
Regarding Docker I’m no expert but I begin to know my way around it. By adding a service to the Docker-compose.yml file it becomes part of the same network as other services, e.g peertube. Consequently Peertube web server should be able to query prosody:52800 while not being available by default to the outside world. That part seems fine and is standard practice. What is less though is managing processes directly across containers. That would mean modifying the Dockerfile container of PeerTube itself and because it’s a plugin I would argue not ideal especially if one has to follow PeerTube updates. What would be preferred (again, arguable) is to have prosody always available. Ideally there both PeerTube and Prosody Dockerfile remain unmodified and only environment variables or configuration files are added. Very interesting to consider how complex plugins should integrate with PeerTube. Could be valuable to ask Chocobozzz for his opinion since he is maintained Dockerfile and docker-compose.yml himself.
I had the same problem! The server on which I tested the very first version had also a Jisti Meet server, and this caused me many problems (because of some Prosody global variables…). It took me several day to find a working configuration!
This is a type of solution that I also tested. But I found some bugs in embedded lives at that time, so it was not good for my needs.
The way that I manage the Prosody process in my plugin is not far from the way Peertube uses ffmpeg.
I’m not sure to fully understand where is the problem for you (again… I’m a total noob to Docker). But if I need to do it differently for Docker installations, why not. Should not be very difficult to rely on docker compose to manage the prosody process, and only generate the prosody config file from the plugin.
There is only one little issue: the Prosody process runs twice in the peertube container. The first process is launched at the container startut, and the second is launched from Peertube.
It is working as is, but it would be nice to shutdown the Prosody process launched by the system. I tried RUN systemctl disable prosody in the Dockerfile, but it seems this is not the right way to do it.
If someone can help…