Code Monkey home page Code Monkey logo

docker-jitsi-meet's Introduction

Jitsi Meet on Docker

Jitsi is a set of Open Source projects that allows you to easily build and deploy secure videoconferencing solutions.

Jitsi Meet is a fully encrypted, 100% Open Source video conferencing solution that you can use all day, every day, for free — with no account needed.

This repository contains the necessary tools to run a Jitsi Meet stack on Docker using Docker Compose.

All our images are published on DockerHub.

Supported architectures

Starting with stable-7439 the published images are available for amd64 and arm64.

Tags

These are the currently published tags for all our images:

Tag Description
stable Points to the latest stable release
stable-NNNN-X A stable release
unstable Points to the latest unstable release
unstable-YYYY-MM-DD Daily unstable release
latest Deprecated, no longer updated (will be removed)

Installation

The installation manual is available here.

Kubernetes

If you plan to install the jitsi-meet stack on a Kubernetes cluster you can find tools and tutorials in the project Jitsi on Kubernetes.

TODO

  • Builtin TURN server.

docker-jitsi-meet's People

Contributors

24kushang avatar aaronkvanmeerten avatar benbz avatar bgrozev avatar cedricroijakkers avatar ciphax avatar damencho avatar danielmcassey avatar debendraoli avatar debfx avatar denzs avatar emrahcom avatar ilaydadastan avatar jakubonderka avatar jallamsetty1 avatar ludovicm67 avatar madmatah avatar madmath03 avatar maxnoe avatar moufmouf avatar netaskd avatar oanaianc avatar prayagsingh avatar saghul avatar sapkra avatar timoschwarzer avatar vorburger avatar waja avatar wfleischer avatar xoxys avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docker-jitsi-meet's Issues

JVB settings

hello,

I have a working Jitsi-meet install on a VM, but we want to evaluate Jitsi-Meet hosted in Docker containers. I noticed that there are JVB settings that's not in our settings when not using Docker. What are these? We are hosting our JVB on a separate machine, if that helps.

org.jitsi.videobridge.xmpp.user.shard.HOSTNAME={{ .Env.XMPP_SERVER }}
org.jitsi.videobridge.xmpp.user.shard.DOMAIN={{ .Env.XMPP_AUTH_DOMAIN }}
org.jitsi.videobridge.xmpp.user.shard.USERNAME={{ .Env.JVB_AUTH_USER }}
org.jitsi.videobridge.xmpp.user.shard.PASSWORD={{ .Env.JVB_AUTH_PASSWORD }}
org.jitsi.videobridge.xmpp.user.shard.MUC_JIDS={{ .Env.JVB_BREWERY_MUC }}@{{ .Env.XMPP_INTERNAL_MUC_DOMAIN }}
org.jitsi.videobridge.xmpp.user.shard.MUC_NICKNAME={{ .Env.HOSTNAME }}
org.jitsi.videobridge.xmpp.user.shard.DISABLE_CERTIFICATE_VERIFICATION=true

Error when LDAP authentication is enabled

Hello, I tried to enable LDAP authentication with this docker compose setup, but something went wrong. I followed instructions in this ticket jitsi/jitsi-meet#2757. It seems Prosody works well, but I can't figure out why I get an error as shown in the picture:

jitsi_20190123_093146

Here is my configuration:

  1. I built https://github.com/luaforge/lualdap directly inside Prosody container, with build-essential libldap2-dev liblua5.1.0-dev packages installed.
  2. Then I rebuilt the container and mount volumes with modules and the library:
prosody:
  ...
  volumes:
    ...
    - ${CONFIG}/prosody-modules:/modules
    - ${CONFIG}/prosody-libs:/usr/lib/lua/5.1
  1. Here is the modified jitsy-meet/prosody/prosody.cfg
...
consider_bosh_secure = true
...
plugin_paths = { "/modules" }
  1. There is nothing special in jitsy-meet/prosody/conf.d/ldap.cfg
  2. Here is the modified jitsy-meet/prosody/conf.d/jitsy-meet.cfg
VirtualHost "meet.jitsi"
    authentication = "ldap2"
    ...

VirtualHost "guest.meet.jitsi"
    authentication = "anonymous"
  1. I also uncommented the line in web/config.js
hosts: {
  ...
  anonymousdomain: 'guest.meet.jitsi',
  ...
}
  1. Here is the complete log output from docker-compose when I'm trying to become a host:
    jitsi.log.txt

Can anyone please advise what I missed here?

Second participant can't connect, grey or red screens appear on both devices

Hi, thanks for the docker-compose solution, works like a charm! :) I tried to set up the deb/manual way but this is the only one that has resulted a working video.

However, the video feed only works if I'm the only one in the room, so it's not that fun after all :D

  • When the second participant tries to join the room on web, we both get the grey reconnect countdown screen.
  • When a mobile client tries to join a room created on web, the mobile gets the red screen, the web gets the grey screen.
  • When a room is created on mobile and a second mobile tries to join, both get the red screen.

Here is my setup starting from a clean Ubuntu 18.04 LTS Cloud-Init KVM image (https://cloud-images.ubuntu.com/bionic/current/bionic-server-cloudimg-amd64.img) on Proxmox VE host, all commands run as root inside the VM:

Installing Docker

apt update
apt upgrade -y
apt remove docker docker-engine docker.io docker-compose
apt purge docker-ce

cd ~
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
cat /etc/apt/sources.list.d/docker.list
rm get-docker.sh 

uname -a
# Linux jitsi-meet 4.15.0-33-generic #36-Ubuntu SMP Wed Aug 15 16:00:05 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

docker -v
# Docker version 18.06.1-ce, build e68fc7a
docker-compose version
# docker-compose version 1.22.0, build f46880fe
# docker-py version: 3.4.1
# CPython version: 3.6.6
# OpenSSL version: OpenSSL 1.1.0f  25 May 2017

systemctl status docker
# active (running)

Installing Jitsi

mkdir -p /opt/jitsi-config/
chmod a+w /opt/jitsi-config/
mkdir -p ~/github
git clone https://github.com/jitsi/docker-jitsi-meet.git ~/github/docker-jitsi-meet
cd ~/github/docker-jitsi-meet
cp env.example .env
cat .env
# replacing the config values to match my environment
sed -i -E 's/(CONFIG=).*/\1\/opt\/jitsi-config/g' .env
sed -i -E 's/(TZ=).*/\1MyContinent\/MyCity/g' .env
sed -i -E "s/(JVB_COMPONENT_SECRET=).*/\1$(openssl rand -hex 32)/g" .env
sed -i -E 's/(JVB_STUN_SERVERS=).*/\1my.own.stun.server:port/g' .env
sed -i -E "s/(JICOFO_COMPONENT_SECRET=).*/\1$(openssl rand -hex 32)/g" .env
sed -i -E "s/(JICOFO_AUTH_PASSWORD=).*/\1$(openssl rand -hex 32)/g" .env
sed -i -E 's/#?(DOCKER_HOST_ADDRESS=).*/\1192.168.1.3/g' .env
cat .env

# cleanup of old configs and containers if any
docker-compose kill
docker rm docker-jitsi-meet_jvb_1 docker-jitsi-meet_jicofo_1 docker-jitsi-meet_prosody_1 docker-jitsi-meet_web_1
rm -rf ~/.jitsi-meet-cfg  
rm -rf /opt/jitsi-config/*

docker-compose up -d
docker ps
# CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                                         NAMES
# bbc3ff069565        jitsi/jvb           "/init"             41 minutes ago      Up 39 minutes       0.0.0.0:10000->10000/udp                      docker-jitsi-meet_jvb_1
# aea6cce3f928        jitsi/jicofo        "/init"             41 minutes ago      Up 39 minutes                                                     docker-jitsi-meet_jicofo_1
# b75362a2a10b        jitsi/prosody       "/init"             41 minutes ago      Up 39 minutes       5222/tcp, 5269/tcp, 5280-5281/tcp, 5347/tcp   docker-jitsi-meet_prosody_1
# 2919f0690e92        jitsi/web           "/init"             41 minutes ago      Up 39 minutes       0.0.0.0:8000->80/tcp, 0.0.0.0:8443->443/tcp   docker-jitsi-meet_web_1
# later copypaste here than their actual start :D

chmod -R 0777 /opt/jitsi-config

I'm aware of this comment about storing configs outside of root-only access path, so I use a directory in /opt with all access provided as you can see above: #5 (comment)
I've also found this comment about the absolute BOSH URL, tried it with and without the DOCKER_HOST_ADDRESS config commented but it didn't help: #2 (comment)

Jitsi is running behind an nginx reverse proxy that is configured to listen 443 ssl http2, it gets valid SSL certs from LE, has a single location / with proxy_pass http://192.168.1.3:8000. Port 443/tcp is open on WAN gateway and pointed to the proxy, 10000/udp is open and pointed to the Jitsi VM (192.168.1.3:10000/udp) just as the official image says:

Env image

Clients are latest Chrome on Linux or latest Jitsi Android apps. I must add that I've only tried to access https://myjitsi.domain.tld from inside the LAN on the computer but also tried to connect to it from mobile internet on the phones with same result.

Chrome doesn't output any error on dev tools with the first participant (only complaining about a woff file but uses a fallback instead):

[Intervention] Slow network is detected. See https://www.chromestatus.com/feature/5636954674692096 for more details. Fallback font will be used while loading: https://myjitsi.domain.tld/fonts/jitsi.woff?94d075
F	@	jquery.min.js:2

When the second participant connects, an error appears for a couple of seconds until page reload:

[conference.js] <e.value>:  CONFERENCE FAILED: conference.videobridgeNotAvailable

On the page reload, there are more errors on the console:

Logger.js:125 [modules/xmpp/strophe.util.js] <Object.i.Strophe.log>:  Strophe: TypeError: Cannot read property 'getMemberRole' of null
    at r._onIncomingCallP2P (https://myjitsi.domain.tld/libs/lib-jitsi-meet.min.js?v=2942:2:242696)
    at r.onIncomingCall (https://myjitsi.domain.tld/libs/lib-jitsi-meet.min.js?v=2942:2:243454)
    at n.emit (https://myjitsi.domain.tld/libs/lib-jitsi-meet.min.js?v=2942:2:96313)
    at a.value (https://myjitsi.domain.tld/libs/lib-jitsi-meet.min.js?v=2942:2:738288)
    at s.Handler.run (https://myjitsi.domain.tld/libs/lib-jitsi-meet.min.js?v=2942:2:23250)
    at https://myjitsi.domain.tld/libs/lib-jitsi-meet.min.js?v=2942:2:31567
    at Object.forEachChild (https://myjitsi.domain.tld/libs/lib-jitsi-meet.min.js?v=2942:2:14907)
    at s.Connection._dataRecv (https://myjitsi.domain.tld/libs/lib-jitsi-meet.min.js?v=2942:2:31400)
    at e.Bosh._onRequestStateChange (https://myjitsi.domain.tld/libs/lib-jitsi-meet.min.js?v=2942:2:50925)
Logger.js:125 [JitsiMeetJS.js] <Object.getGlobalOnErrorHandler>:  UnhandledError: null Script: null Line: null Column: null StackTrace:  Error: Strophe: error: Cannot read property 'getMemberRole' of null
    at Object.i.Strophe.log (strophe.util.js:89)
    at Object.fatal (strophe.js:2093)
    at Object._handleError (strophe.js:2005)
    at s.Handler.run (strophe.js:2558)
    at strophe.js:3822
    at Object.forEachChild (strophe.js:1522)
    at s.Connection._dataRecv (strophe.js:3810)
    at e.Bosh._onRequestStateChange (strophe.js:5559)
Logger.js:125 [modules/xmpp/strophe.util.js] <Object.i.Strophe.log>:  Strophe: error: Cannot read property 'getMemberRole' of null

Then this error repeats over and over on every page reload. If one client is reloaded before another, it shows the camera image and the whole room interface but then when the second connects, grey screen again.

On mobile, there is a flash of two participants in the room (two boxes of avatars with white border) but then the red screen happens on both devices.

What am I doing wrong or is missing? It seems Jitsi is working fine when used alone but not with two participants. Do you have some recommendations what or where to investigate further?

jigasi support

Hi guys, it's great to see the official jitsi docker set-up - this is amazing!

I would like to know if you have plans to add jigasi on the picture

Given token does not match calculated token

I think I've almost got this working, but I'm hitting some trouble where it appears that both jvb and jicofo are unable to connect as prosody components? Testing this with default config (cp env.example .env), spinning up with sudo docker-compose up.

prosody_1  | jcp5589c98e94d0                         info       Incoming Jabber component connection
prosody_1  | jitsi-videobridge.meet.jitsi:component  info       Component authentication failed for jitsi-videobridge.meet.jitsi
prosody_1  | mod_component                           info       Disconnecting component, <stream:error> is: <stream:error><not-authorized xmlns='urn:ietf:params:xml:ns:xmpp-streams'/><text xmlns='urn:ietf:params:xml:ns:xmpp-streams'>Given token does not match calculated token</text></stream:error>
prosody_1  | jcp5589c98e94d0                         info       component disconnected: jitsi-videobridge.meet.jitsi (false)
jvb_1      | JVB 2018-08-07 06:09:20.936 SEVERE: [18] org.jitsi.meet.ComponentMain.call().323 not-authorized, host:xmpp.meet.jitsi, port:5347
jvb_1      | org.xmpp.component.ComponentException: not-authorized
jvb_1      |    at org.jivesoftware.whack.ExternalComponent.connect(ExternalComponent.java:243)
jvb_1      |    at org.jivesoftware.whack.ExternalComponentManager.addComponent(ExternalComponentManager.java:242)
jvb_1      |    at org.jivesoftware.whack.ExternalComponentManager.addComponent(ExternalComponentManager.java:222)
jvb_1      |    at org.jitsi.meet.ComponentMain$3.call(ComponentMain.java:315)
jvb_1      |    at org.jitsi.meet.ComponentMain$3.call(ComponentMain.java:300)
jvb_1      |    at org.jitsi.retry.RetryStrategy$TaskRunner.run(RetryStrategy.java:193)
jvb_1      |    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
jvb_1      |    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
jvb_1      |    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
jvb_1      |    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
jvb_1      |    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
jvb_1      |    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
jvb_1      |    at java.lang.Thread.run(Thread.java:748)
prosody_1  | jcp5589c98f3850                         info       Incoming Jabber component connection
prosody_1  | focus.meet.jitsi:component              info       Component authentication failed for focus.meet.jitsi
prosody_1  | mod_component                           info       Disconnecting component, <stream:error> is: <stream:error><not-authorized xmlns='urn:ietf:params:xml:ns:xmpp-streams'/><text xmlns='urn:ietf:params:xml:ns:xmpp-streams'>Given token does not match calculated token</text></stream:error>
prosody_1  | jcp5589c98f3850                         info       component disconnected: focus.meet.jitsi (false)
prosody_1  | jcp5589c97e0f10                         info       Incoming Jabber component connection
prosody_1  | focus.meet.jitsi:component              info       Component authentication failed for focus.meet.jitsi
prosody_1  | mod_component                           info       Disconnecting component, <stream:error> is: <stream:error><not-authorized xmlns='urn:ietf:params:xml:ns:xmpp-streams'/><text xmlns='urn:ietf:params:xml:ns:xmpp-streams'>Given token does not match calculated token</text></stream:error>
prosody_1  | jcp5589c97e0f10                         info       component disconnected: focus.meet.jitsi (false)
jicofo_1   | Aug 07, 2018 6:08:51 AM net.java.sip.communicator.util.Logger error
jicofo_1   | SEVERE: not-authorized, host:xmpp.meet.jitsi, port:5347
jicofo_1   | org.xmpp.component.ComponentException: not-authorized
jicofo_1   |    at org.jivesoftware.whack.ExternalComponent.connect(ExternalComponent.java:243)
jicofo_1   |    at org.jivesoftware.whack.ExternalComponentManager.addComponent(ExternalComponentManager.java:242)
jicofo_1   |    at org.jivesoftware.whack.ExternalComponentManager.addComponent(ExternalComponentManager.java:222)
jicofo_1   |    at org.jitsi.meet.ComponentMain$3.call(ComponentMain.java:315)
jicofo_1   |    at org.jitsi.meet.ComponentMain$3.call(ComponentMain.java:300)
jicofo_1   |    at org.jitsi.retry.RetryStrategy$TaskRunner.run(RetryStrategy.java:193)
jicofo_1   |    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
jicofo_1   |    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
jicofo_1   |    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
jicofo_1   |    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
jicofo_1   |    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
jicofo_1   |    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
jicofo_1   |    at java.lang.Thread.run(Thread.java:748)
jicofo_1   |
prosody_1  | c2s5589c97eb540                         info       Client connected
prosody_1  | c2s5589c97eb540                         info       Stream encrypted (TLSv1.2 with ECDHE-RSA-AES256-GCM-SHA384)
jicofo_1   | Aug 07, 2018 6:08:51 AM net.java.sip.communicator.util.Logger error
jicofo_1   | SEVERE: Failed to connect/login: SASLError using SCRAM-SHA-1: not-authorized
jicofo_1   | org.jivesoftware.smack.sasl.SASLErrorException: SASLError using SCRAM-SHA-1: not-authorized
jicofo_1   |    at org.jivesoftware.smack.SASLAuthentication.authenticationFailed(SASLAuthentication.java:291)
jicofo_1   |    at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:1096)
jicofo_1   |    at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$300(XMPPTCPConnection.java:994)
jicofo_1   |    at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnection.java:1010)
jicofo_1   |    at java.lang.Thread.run(Thread.java:748)
jicofo_1   |
prosody_1  | c2s5589c97eb540                         info       Client disconnected: connection closed

The initial web interface appears to be working, but when attempting to join a room it drops into a "Something went wrong, attempting to reconnect in 30s" loop.

The only clue I can find is that both jvb and jicofo appear to have some trouble setting up some config (before initiating the prosody connections)?

jvb_1      | JVB 2018-08-07 06:08:44.667 SEVERE: [10] impl.configuration.ConfigurationActivator.log() Error creating c lib instance for fixing file permissions
jvb_1      | java.nio.file.FileSystemException: /config: Operation not permitted
jvb_1      |    at sun.nio.fs.UnixException.translateToIOException(UnixException.java:91)
jvb_1      |    at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
jvb_1      |    at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
jvb_1      |    at sun.nio.fs.UnixFileAttributeViews$Posix.setMode(UnixFileAttributeViews.java:238)
jvb_1      |    at sun.nio.fs.UnixFileAttributeViews$Posix.setPermissions(UnixFileAttributeViews.java:260)
jvb_1      |    at java.nio.file.Files.setPosixFilePermissions(Files.java:2045)
jvb_1      |    at net.java.sip.communicator.impl.configuration.ConfigurationActivator.fixPermissions(ConfigurationActivator.java:166)
jvb_1      |    at net.java.sip.communicator.impl.configuration.ConfigurationActivator.start(ConfigurationActivator.java:87)
jvb_1      |    at org.jitsi.impl.osgi.framework.BundleImpl.start(BundleImpl.java:307)
jvb_1      |    at org.jitsi.impl.osgi.framework.launch.FrameworkImpl.startLevelChanged(FrameworkImpl.java:472)
jvb_1      |    at org.jitsi.impl.osgi.framework.startlevel.FrameworkStartLevelImpl$Command.run(FrameworkStartLevelImpl.java:137)
jvb_1      |    at org.jitsi.impl.osgi.framework.AsyncExecutor.runInThread(AsyncExecutor.java:122)
jvb_1      |    at org.jitsi.impl.osgi.framework.AsyncExecutor.access$000(AsyncExecutor.java:28)
jvb_1      |    at org.jitsi.impl.osgi.framework.AsyncExecutor$1.run(AsyncExecutor.java:231)
 SEVERE: Error creating c lib instance for fixing file permissions
jicofo_1   | java.nio.file.FileSystemException: /config: Operation not permitted
jicofo_1   |    at sun.nio.fs.UnixException.translateToIOException(UnixException.java:91)
jicofo_1   |    at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
jicofo_1   |    at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
jicofo_1   |    at sun.nio.fs.UnixFileAttributeViews$Posix.setMode(UnixFileAttributeViews.java:238)
jicofo_1   |    at sun.nio.fs.UnixFileAttributeViews$Posix.setPermissions(UnixFileAttributeViews.java:260)
jicofo_1   |    at java.nio.file.Files.setPosixFilePermissions(Files.java:2045)
jicofo_1   |    at net.java.sip.communicator.impl.configuration.ConfigurationActivator.fixPermissions(ConfigurationActivator.java:166)
jicofo_1   |    at net.java.sip.communicator.impl.configuration.ConfigurationActivator.start(ConfigurationActivator.java:87)
jicofo_1   |    at org.jitsi.impl.osgi.framework.BundleImpl.start(BundleImpl.java:307)
jicofo_1   |    at org.jitsi.impl.osgi.framework.launch.FrameworkImpl.startLevelChanged(FrameworkImpl.java:472)
jicofo_1   |    at org.jitsi.impl.osgi.framework.startlevel.FrameworkStartLevelImpl$Command.run(FrameworkStartLevelImpl.java:137)
jicofo_1   |    at org.jitsi.impl.osgi.framework.AsyncExecutor.runInThread(AsyncExecutor.java:122)
jicofo_1   |    at org.jitsi.impl.osgi.framework.AsyncExecutor.access$000(AsyncExecutor.java:28)
jicofo_1   |    at org.jitsi.impl.osgi.framework.AsyncExecutor$1.run(AsyncExecutor.java:231)

Ubuntu 16.04
docker-compose version 1.18.0, build 8dd22a9
Docker version 17.03.2-ce, build f5ec1e2

Screensharing not working

Hello,
the containers works well, I'm able to launch jitsi meet, but the screen-sharing (which is working on a demo server) is not enabled.
I could not figure out if it was missing or a configuration issue (I'm new to jitsi).

need help

I hope this helps improve the server, or helps others solve the problem. When I first set up the service (without changing any configuration), it works.
But when docker stops all the servers at the same time, I can't talk properly (he always makes an error when the second or more clients connect to the room).
After that I cleared the previous server and rebuilt it, shutting down a server separately and then starting it according to the command (in order to find out which server is the problem), then there is no problem, (at this point I tested and restarted 4 servers, And found that they are all working well) and can be restarted even after all are turned off (calls work normally).
It's like a strange bug that disappeared under my gorgeous operation. . .

Calling out to SIP can hear Jitsi members, but can't talk back.

Calling out via SIP through our Asterisk system allows callers to hear the Jitsi meeting, but the caller can not speak back to the Jitsi room.

image

The caller shows up as "muted" and there is no way to unmute them.

I have made sure to follow the advanced configuration options here.

Any ideas?

[noob] Unable to get the docker image working

Hi.

Thanks for providing a docker image template.
However, I am not able to make it working.

The setup:

Running the image on a dedicated server with public ip on eth0.
Having apache2 as proxy for both http(s) ports.

After some dock exec -it <id> cat/etc/passwd I was able to set the right perms on some folder. For further references:

root@khiksistigma :) # ls -aln 
total 32
drwxr-xr-x  8 1000 1000 4096 oct.   5 17:26 .
drwxrwxr-x 10 1000 1000 4096 oct.   5 16:26 ..
drwx------  2  999 1000 4096 oct.   5 16:51 jicofo
drwx------  2  999 1000 4096 oct.   5 17:38 jvb
drwxr-xr-x  4 1000 1000 4096 oct.   5 16:51 meet
drwxr-xr-x  5  101  102 4096 oct.   5 16:51 prosody
drwxr-xr-x  2  101  102 4096 oct.   5 17:31 prosody_var
drwxr-xr-x  4    0    0 4096 oct.   5 17:15 web

After reading other issues, am not running docker as root.
.env
docker-compose.yml.txt
As I had no idea which value tu setup on DOCKER_HOST_ADDRESS I put the public ip address.

the problem:

After the docker-compose up everything seems to be working fine. Not so much errors in logs. Opening a webpage on jitsi.nailyk.fr seems to be working. However, when someone attempt to open the same link to join, the both webpages crashes and the log display SEVERE: Can not invite participant -- no bridge available.

Here is the list of opened ports:

CONTAINER ID        IMAGE                       COMMAND                  CREATED             STATUS              PORTS                                                                                            NAMES
d97e2e1f4afa        jitsi/jvb                   "/init"                  5 seconds ago       Up 4 seconds        51.15.17.68:10000->10000/udp                                                                     docker-jitsi-meet_jvb_1_f812e25b8c76
a10386ce5886        jitsi/prosody               "/init"                  23 minutes ago      Up 3 seconds        5222/tcp, 5269/tcp, 5280-5281/tcp, 5347/tcp                                                      docker-jitsi-meet_prosody_1_740326e9447f
f5de03020013        jitsi/web                   "/init"                  33 minutes ago      Up 3 seconds        127.0.0.1:8000->80/tcp, 127.0.0.1:8443->443/tcp                                                  docker-jitsi-meet_web_1_1f78696201e1
7a11218fe595        jitsi/jicofo                "/init"                  About an hour ago   Up 4 seconds                                                                                                         docker-jitsi-meet_jicofo_1_a4c262113f25

[...]

udp        0      0 51.15.17.68:10000       0.0.0.0:*                           27351/docker-proxy  

so only 10000 is publicly exposed but doesn't seems to be open:

root@khiksistigma 1 :( # nc localhost 10000 -vvvv
localhost [127.0.0.1] 10000 (webmin) : Connection refused
 sent 0, rcvd 0

I already tried to delete the whole generated files (${CONFIG})without any changes.
Docker log from docker-compose up to two tabs on the same room:
docker.log

What am I missing please?
Thanks in advance!

No connection and 'prosody.cfg.lua' errors

First time user today. Cloned this repo and and docker-compose up. The containers build ok, but I can not connect on http://localhost:8000 I tried different ports also no luck. With docker stats seeing jitsi_jicofo_1 using full CPU of one processor, when doing nothing.

I decided to run docker-compose up as non-detached, I am getting many error messages:

**************************
prosody_1  | A problem occured while reading the config file /config/prosody.cfg.lua
prosody_1  | 
prosody_1  | Error: Component "<no value>" clashes with previously defined Host "<no value>", for services use a sub-domain like conference.<no value>
prosody_1  | 
prosody_1  | More help on configuring Prosody can be found at http://prosody.im/doc/configure
prosody_1  | Good luck!
prosody_1  | **************************

Suddenly 2nd participant gives "reconnecting" on first and second screen

screenshot from 2018-12-04 20-52-23

Jitsi have been working ok for some months, but after last Friday docker-compose up -d --force-recreate:

  • first participant shows working setup and own webcam image
  • as soon as 2nd participant arrives, both screens get grey (or red screen on Android) and a reconnecting timer shows.

I just cloned latest repo, but no result...

Regenerate config on every container boot

People are confused by the need to remove the config directory. Very rightfully so. The config should be regerated on every boot, based on the given env variables.

Potential trouble ahead:

  • Prosody users
  • Lets Encrypt config

JVB Crash if removing JVB_STUN_SERVERS

Hi,
I'm trying to deploy a jitsi-meet docker instance in a environment where JVB can't connect to external STUN server.
So I want to remove STUN discovery mechanism and set JVB Public IP with DOCKER_HOST_ADDRESS by removing JVB_STUN_SERVERS env variable.

But there an issue in sip-communicator.properties generation from template.
If I set an empty value for JVB_STUN_SERVERS or if I remove it in .env file, the specified environment variable is empty on jvb container but template generation with frep write <no value> in config file.
This <no value> is not valid and it crash Health check mechanism in JVB.
I had to stop my jvb container and correct by hand the jvb configuration file.

This <no value> instead of an empty string comes from default Golang template parse function used by frep (https://stackoverflow.com/questions/49933684/prevent-no-value-being-inserted-by-golang-text-template-library).

Possible solution is to sanitize config file with a sed command to remove the <no value> after frep call (or to made a PR in frep to configure is template parse behavior.....)
-> sed -i 's/<no value>//' /config/sip-communicator.properties

Regards,
Damien

[noob] web service not working

Thanks for the great project,
I have followed the tutorial here and I have found no errors
I have tried to access DOCKER_HOST_URL:8000 didn't work
as if there was no webserver running......
I have used bash on the web container and found nginx not running
I have started nginx , I get the default nginx page!
I tried about everything relevant on the .env file
Please Help
// .env file: attached
I want to use it on the local network without https and then port forward to the internet
but I can change initial plan if needed

dotenv.txt

Using: Oracle GNU/Linux

Can't make the config run on Kubernetes

Hi,

I apologize in advance because this is more a support request rather than an issue with the provided config.

I have tried to transform the docker-compose yaml to some kube deployment/services yaml files in order to deploy the config on IBM Cloud Kubernetes service.
It seems like the config is running, but when two peers connect to a room, the video feed only lasts for a few seconds and then drops.

Below is one suspicious entry I could grab from the videobridge logs:

JVB 2018-07-30 11:11:00.863 INFO: [1051] org.ice4j.ice.ConnectivityCheckClient.log() Pair failed: 172.30.204.17:10000/udp/host -> 192.168.1.21:58164/udp/host (stream.RTP)
JVB 2018-07-30 11:11:00.886 INFO: [1051] org.ice4j.ice.ConnectivityCheckClient.log() Pair failed: 172.30.204.17:10000/udp/host -> 192.168.1.21:58164/udp/host (stream.RTP)
JVB 2018-07-30 11:11:00.918 INFO: [1051] org.ice4j.ice.ConnectivityCheckClient.log() Pair failed: 172.30.204.17:4443/tcp/host -> 192.168.1.21:9/tcp/host (stream.RTP)
JVB 2018-07-30 11:11:01.199 INFO: [1052] org.ice4j.ice.ConnectivityCheckClient.log() Pair failed: 172.30.204.17:10000/udp/host -> 169.254.194.74:51441/udp/host (stream.RTP)
JVB 2018-07-30 11:11:01.221 INFO: [1052] org.ice4j.ice.ConnectivityCheckClient.log() Pair failed: 172.30.204.17:10000/udp/host -> 192.168.23.1:51442/udp/host (stream.RTP)
JVB 2018-07-30 11:11:01.242 INFO: [1052] org.ice4j.ice.ConnectivityCheckClient.log() Pair failed: 172.30.204.17:10000/udp/host -> 192.168.1.61:51443/udp/host (stream.RTP)
JVB 2018-07-30 11:11:01.263 INFO: [1052] org.ice4j.ice.ConnectivityCheckClient.log() Pair failed: 172.30.204.17:10000/udp/host -> 169.254.194.74:51441/udp/host (stream.RTP)
JVB 2018-07-30 11:11:01.284 INFO: [1052] org.ice4j.ice.ConnectivityCheckClient.log() Pair failed: 172.30.204.17:4443/tcp/host -> 169.254.194.74:9/tcp/host (stream.RTP)
JVB 2018-07-30 11:11:01.305 INFO: [1052] org.ice4j.ice.ConnectivityCheckClient.log() Pair failed: 172.30.204.17:4443/tcp/host -> 192.168.23.1:9/tcp/host (stream.RTP)
JVB 2018-07-30 11:11:01.326 INFO: [1052] org.ice4j.ice.ConnectivityCheckClient.log() Pair failed: 172.30.204.17:4443/tcp/host -> 192.168.1.61:9/tcp/host (stream.RTP)
JVB 2018-07-30 11:17:45.612 INFO: [2753] org.jitsi.videobridge.Conference.log() CAT=stat expire_conf,conf_id=75082097e8838dbc duration=406,conf_count=0,ch_count=0,v_streams=0,conf_completed=1,no_payload_ch=4,no_transport_ch=4,total_ch=4,has_failed=true,has_partially_failed=true

To me, sounds like the problem is related to the videobridge, and especially with the UDP port 10000 that is not properly exposed outside of the cluster.

Could you please help me to diagnose what is wrong with my kube setup?

Thanks

ENABLE_HTTP_REDIRECT=0 does not disable HTTPS redirect

When creating a fresh docker instance when setting ENABLE_HTTP_REDIRECT=0 in the .env file the if else statement doesn't seem to be working in web/rootfs/defaults/default.

In my install "return 301 https://$host$request_uri;" was placed there instead of "include /config/nginx/meet.conf;"

manually changing this worked

Address RTP in SDP & PROXY PORT

Hello, I have an installation with docker-compose in a Centos7, I'm having problems with jigasi, exactly two:
The option PROXY_PORT in .env is omitted in practice, I need the port to be 5062 but ignore it and continue transmitting to 5060.

The address in SDP to transmit RTP is the IP of the Docker container:

v = 0
o = 117225-jitsi.org 0 0 IN IP4 **172.18.0.6**
s = -
c = IN IP4 172.18.0.6
t = 0 0
m = audio 20004 RTP / AVP 96 97 9 0 8 98 101
a = rtpmap: 96 opus / 48000/2
a = fmtp: 96 usedtx = 1
a = ptime: 20
a = rtpmap: 97 AMR-WB / 16000
a = rtpmap: 9 G722 / 8000
a = rtpmap: 0 PCMU / 8000
a = rtpmap: 8 PCMA / 8000
a = rtpmap: 98 iLBC / 8000
a = rtpmap: 101 telephone-event / 8000
a = extmap: 1 urn: ietf: params: rtp-hdrext: csrc-audio-level
a = extmap: 2 urn: ietf: params: rtp-hdrext: ssrc-audio-level
a = rtcp-xr: voip-metrics

This causes that there is no audio in one direction of the call.

Jvb advanced configuration

After starting the server, when multiple computers access, they cannot see or hear each other. I caught the abnormal feedback of ice in the browser console, and I didn't connect ice well except the machine.

Check out the topic: https://community.jitsi.org/t/cannot-see-video-or-hear-audio-on-self-hosted-instance/16926/8, which seems to be the same problem.

Docker-jitsi-meet how to do jvb advanced configuration, localhost.ip.address should I write 172.x.x.x or 192.x.x.x?

Looking forward to your suggestions

Let's Encrypt certificate

I am looking at the Let's Encrypt implementation.

Should we generate a new certificate every time the container is booted? Because validating /etc/letsencrypt/live/$LETSNECRYPT_DOMAIN/fullchain.pem will fail, since the container will not keep files that are not in volumes, after the container is shut down.

Changing .env after running doesn't change variables

Running on 1364605

  1. Edit .env to include sip credentials
  2. Run docker-compose -f docker-compose.yml -f jigasi.yml up -d
  3. Change sip credentials in .env
  4. Run docker-compose -f docker-compose.yml -f jigasi.yml up -d

No matter what you try, the sip credentials won't go away! I've tried logging out and back in to reset environment, I've tried blowing away the docker containers, images, etc. I've tried --force-recreate... It seems like to matter what I try, it is using the old credentials from the first time I ran the docker command.

Any ideas?

Make jigasi completely optional

I noticed that when I want to setup a cluster without jigasi some jigasi specific code will be executed.

For example:

prosodyctl --config $PROSODY_CFG register $JIGASI_XMPP_USER $XMPP_AUTH_DOMAIN $JIGASI_XMPP_PASSWORD

All JIGASI_* variables should be optional.
To achieve this we should implement an environment variable like JIGASI_ENABLE.

Edit:
Or maybe the following is also good enough.

if [[ ! -z $JIGASI_XMPP_USER ]] && [[ ! -z $JIGASI_XMPP_PASSWORD ]]; then
    prosodyctl --config $PROSODY_CFG register $JIGASI_XMPP_USER $XMPP_AUTH_DOMAIN $JIGASI_XMPP_PASSWORD
fi

Jitsi server in Docker enviroment conectivity from mobile client

I have installed Jitsi environment in Docker. The docker-compose command creates the 4 containers and everything seems to work fine. I can even make a conference between several members, in my local network, every member points its web browser to docker host successfully. Great job Jitsiers!!

The thing here is that my official mobile Jitsi clients cannot join any conversation in the Docker Jitsi server.

We have opened ports 8000 and 8443 and it seems that is enough for web clients connect. It is possible that mobile clients use some additional port? Perhaps, they connect directly to 10000 port?

nginx issue when starting project

Hello,

I tried to start the project on a Mac with Docker, I followed this comment #16 (comment) in order to have a fresh install of jitsi.

Unfortunatelly I have an issue with nginx :

image

When I go to localhost:8000 I have "connection refused" issue.

Thanks in advance for any help,

See version number?

Maybe a very dumb question. But how can we see version number of Jitsi running in containers? I would have expected to see in the jitsi home page, some version number...

I have no idea when or how to upgrade to newest version... other than periodically removing all images and containers and force rebuild

Special configuration required for mobile clients?

Question

Are there anything special that needs to be configured for a Jitsi Meet instance deployed with Docker to be able to serve Jisit Meet mobile (React Native) clients?

Details

I deployed an instance of Jitsi Meet using the Docker setup in this repo.

My only modifications are:

  • I generated an SSL certificate with Letsencrypt and replaced the default ones in config/meet/ssl
  • In nginx/site-confs/default I added alias rules for external_api.js
  • I expose the web container at port 80 and 443 instead of 8000 and 8443. In other words I am not using another nginx server to do SSL termination. Rather I use the nginx server inside jitsi/web directly with a Letsencrypt certificate.

The instance works well when accessed from browsers, and with the jisit-meet-electron client. However, on the mobile (React Native) client, when I try to join a conference on my custom instance, the indicator keeps "spinning":

And after a while, it failed with the "you are disconnect screen":

Attempts to debug 1: Android simulator

Then, in order to debug this, I built the mobile client from source, launched it in the Android emulator and attached the React Native debugger.

When I tried joining a conference on my Jisit Meet instance, the mobile app produced 2 errors in the format of this:

[modules\xmpp\strophe.util.js] <Object.i.Strophe.log>:  Strophe: request id 66.4 error 0 happened

After which the room-joining attempt failed with the "you are disconnected" screen (same as on a physical device).

Attempts to debug 2: server logs

On the server I watched the nginx access logs with docker-compose logs -f web:

When the mobile client attempts to join a conference, there is only one HTTP request:

web_1      | 103.44.xxx.xxx - - [04/Aug/2018:17:45:08 +0000] "GET /config.js?room=sdfsdf HTTP/1.1" 200 0 "-" "okhttp/3.6.0"

Whereas on another Jitsi Meet instance (radium2.jitsi.net; which is provisioned by the jitsi team) that works correctly with mobile clients, the first /config.js HTTP request is immediately followed by several requests to /http-bind.

103.44.xxx.xxx - - [04/Aug/2018:17:45:01 +0000] "GET /config.js?room=dd HTTP/1.1" 200 5245 "-" "okhttp/3.6.0" "-"
103.44.xxx.xxx - - [04/Aug/2018:17:45:01 +0000] "GET /libs/analytics-ga.js HTTP/1.1" 200 5598 "-" "okhttp/3.6.0" "-"
103.44.xxx.xxx - - [04/Aug/2018:17:45:01 +0000] "GET /libs/jitsi-analytics-web-client.min.js HTTP/1.1" 404 395 "-" "okhttp/3.6.0" "-"
103.44.xxx.xxx  - - [04/Aug/2018:17:45:01 +0000] "POST /http-bind?room=dd HTTP/1.1" 200 622 "-" "okhttp/3.6.0" "-"
103.44.xxx.xxx - - [04/Aug/2018:17:45:02 +0000] "POST /http-bind?room=dd HTTP/1.1" 200 199 "-" "okhttp/3.6.0" "-"
103.44.xxx.xxx - - [04/Aug/2018:17:45:02 +0000] "POST /http-bind?room=dd HTTP/1.1" 200 386 "-" "okhttp/3.6.0" "-"
103.44.xxx.xxx - - [04/Aug/2018:17:45:02 +0000] "POST /http-bind?room=dd HTTP/1.1" 200 367 "-" "okhttp/3.6.0" "-"
103.44.xxx.xxx - - [04/Aug/2018:17:45:02 +0000] "POST /http-bind?room=dd HTTP/1.1" 200 307 "-" "okhttp/3.6.0" "-"
103.44.xxx.xxx  - - [04/Aug/2018:17:45:02 +0000] "POST /http-bind?room=dd HTTP/1.1" 200 2348 "-" "okhttp/3.6.0" "-"
103.44.xxx.xxx - - [04/Aug/2018:17:45:02 +0000] "POST /http-bind?room=dd HTTP/1.1" 200 623 "-" "okhttp/3.6.0" "-"
103.44.xxx.xxx - - [04/Aug/2018:17:45:02 +0000] "POST /http-bind?room=dd HTTP/1.1" 200 2204 "-" "okhttp/3.6.0" "-"
103.44.xxx.xxx - - [04/Aug/2018:17:45:03 +0000] "POST /http-bind?room=dd HTTP/1.1" 200 2058 "-" "okhttp/3.6.0" "-"
103.44.xxx.xxx - - [04/Aug/2018:17:45:03 +0000] "POST /http-bind?room=dd HTTP/1.1" 200 563 "-" "okhttp/3.6.0" "-"
103.44.xxx.xxx - - [04/Aug/2018:17:45:04 +0000] "POST /http-bind?room=dd HTTP/1.1" 200 316 "-" "okhttp/3.6.0" "-"
103.44.xxx.xxx - - [04/Aug/2018:17:45:04 +0000] "POST /http-bind?room=dd HTTP/1.1" 200 116 "-" "okhttp/3.6.0" "-"

Docker-Compose is failing

Hi,

even with correkt -env-File and your Docker-Compose.yml the Building of the Service is failing with following:

docker stack deploy -c docker-compose.yml meet1
1 error(s) decoding:

  • error decoding 'Ports': No port specified: :/udp

In the Basic Conf Sektion i did this:

Basic configuration options

Directory where all configuration will be stored.

CONFIG=~/.jitsi-meet-cfg

Exposed HTTP port.

HTTP_PORT=80

Exposed HTTPS port.

HTTPS_PORT=443

System time zone.

TZ=Europe/Amsterdam

IP address of the Docker host. See the "Running on a LAN environment" section

in the README.

DOCKER_HOST_ADDRESS=10.12.10.94

Any Ideas?

tpl help

Hi there,

I'm trying to modify one of the config files, and want to do the following:

{{- range (splitList "," .Env.XMPP_JVBS) }}
Component "{{.}}"
    component_secret "{{.ENV.Secret}}"
{{- end }}

I don't know how the templating works, but how do I access .ENV.Secret inside the loop.

Thanks!

jigasi exception on placing incoming call for a conference room

Hi,
I have enabled the sip gateway - jigasi container for jitsi meet. I’m using Asterisk as a sip server and Jitsi Desktop as a sip client
Outgoing calls to a registered sip client from jitsi meet is working over jigasi gateway . The sip client is able to join the video conference room for audio.

Issue - incoming call is not able to join the video conference room.

Jigasi logs shows NullPointerException on "jigasi.JvbConference.getResourceIdentifier". Is there any missing configuration that could be causing this exception for incoming calls ?
Please help.

Asterisk Dial plan configured with room name “siptest” –
exten => 103,1,SIPAddHeader(X-Room-Name: siptest)
exten => 103,2,Dial(SIP/jigasi)
exten => 103,3,Hangup()

Jigasi log -
Jigasi 2018-11-28 09:15:59.405 INFO: [3478] org.jitsi.jigasi.SipGateway.incomingCallReceived().188 Incoming call received…
Jigasi 2018-11-28 09:16:00.407 INFO: [3479] org.jitsi.jigasi.SipGatewaySession.run().894 Wait thread cancelled
Jigasi 2018-11-28 09:16:00.407 SEVERE: [3478] impl.protocol.sip.SipStackSharing.logApplicationException().1145 An error occurred while processing event of type: javax.sip.DialogTerminatedEvent
java.lang.NullPointerException
at org.jitsi.jigasi.JvbConference.getResourceIdentifier(JvbConference.java:354)
at org.jitsi.jigasi.JvbConference.start(JvbConference.java:404)
at org.jitsi.jigasi.SipGatewaySession.joinJvbConference(SipGatewaySession.java:315)
at org.jitsi.jigasi.SipGatewaySession.onJoinJitsiMeetRequest(SipGatewaySession.java:538)
at net.java.sip.communicator.impl.protocol.sip.OperationSetJitsiMeetToolsSipImpl.notifyJoinJitsiMeetRoom(OperationSetJitsiMeetToolsSipImpl.java:112)
at net.java.sip.communicator.impl.protocol.sip.CallSipImpl.processInvite(CallSipImpl.java:569)
at net.java.sip.communicator.impl.protocol.sip.OperationSetBasicTelephonySipImpl.processInvite(OperationSetBasicTelephonySipImpl.java:1103)
at net.java.sip.communicator.impl.protocol.sip.OperationSetBasicTelephonySipImpl.processRequest(OperationSetBasicTelephonySipImpl.java:337)
at net.java.sip.communicator.impl.protocol.sip.ProtocolProviderServiceSipImpl.processRequest(ProtocolProviderServiceSipImpl.java:1114)
at net.java.sip.communicator.impl.protocol.sip.SipStackSharing.processRequest(SipStackSharing.java:732)
at gov.nist.javax.sip.EventScanner.deliverRequestEvent(EventScanner.java:250)
at gov.nist.javax.sip.EventScanner.deliverEvent(EventScanner.java:146)
at gov.nist.javax.sip.SipProviderImpl.handleEvent(SipProviderImpl.java:185)
at gov.nist.javax.sip.DialogFilter.processRequest(DialogFilter.java:1324)
at gov.nist.javax.sip.stack.SIPServerTransactionImpl.processRequest(SIPServerTransactionImpl.java:811)
at gov.nist.javax.sip.stack.UDPMessageChannel.processMessage(UDPMessageChannel.java:568)
at gov.nist.javax.sip.stack.UDPMessageChannel.processIncomingDataPacket(UDPMessageChannel.java:514)
at gov.nist.javax.sip.stack.UDPMessageChannel.run(UDPMessageChannel.java:319)
at java.lang.Thread.run(Thread.java:748)

Record and stream

Hi!
It is a great solution easy to use and work just fine.
But i have an issue with recording. As far i understand it is not possible to record or stream your conference. I tried to create jibri docker image but no luck for now. Maybe there is some another way to record?

What is jitsi video bridge port number?

What is the default JVB_PORT and JVB_TCP_PORT number?
I have to configure inbound policy

    jvb:
        image: jitsi/jvb
        ports:
            - '${JVB_PORT}:${JVB_PORT}/udp'
            - '${JVB_TCP_PORT}:${JVB_TCP_PORT}'

no bridge available

when person 2 join my muc room will crash.

Oct 01, 2018 10:14:18 AM net.java.sip.communicator.util.Logger info
INFO: Focus request for room: [email protected]
Oct 01, 2018 10:14:18 AM org.jitsi.util.LoggerImpl log
INFO: Created new focus for [email protected]@auth.meet.jitsi conferences count: 1 options:
    channelLastN: -1
    enableLipSync: true
    openSctp: true
    disableRtx: false
Oct 01, 2018 10:14:18 AM org.jitsi.util.LoggerImpl log
INFO: Lip-sync enabled in [email protected]
Oct 01, 2018 10:14:18 AM org.jitsi.util.LoggerImpl log
INFO: Joining the room: [email protected]
Oct 01, 2018 10:14:19 AM org.jitsi.util.LoggerImpl log
INFO: Chat room event ChatRoomMemberPresenceChangeEvent[type=MemberJoined sourceRoom=org.jitsi.impl.protocol.xmpp.ChatRoomImpl@6524612f member=ChatMember[[email protected]/9c6efcea, jid: null]@504758532]
Oct 01, 2018 10:14:19 AM org.jitsi.util.LoggerImpl log
INFO: Granted owner to [email protected]/9c6efcea
Oct 01, 2018 10:14:19 AM org.jitsi.util.LoggerImpl log
INFO: Member [email protected]/9c6efcea joined.
Oct 01, 2018 10:14:50 AM net.java.sip.communicator.util.Logger info
INFO: Focus request for room: [email protected]
Oct 01, 2018 10:14:50 AM org.jitsi.util.LoggerImpl log
INFO: Chat room event ChatRoomMemberPresenceChangeEvent[type=MemberJoined sourceRoom=org.jitsi.impl.protocol.xmpp.ChatRoomImpl@6524612f member=ChatMember[[email protected]/ac2fda61, jid: null]@10255114]
Oct 01, 2018 10:14:50 AM org.jitsi.util.LoggerImpl log
INFO: Member [email protected]/ac2fda61 joined.
Oct 01, 2018 10:14:50 AM org.jitsi.util.LoggerImpl log
SEVERE: Can not invite participant -- no bridge available.
Oct 01, 2018 10:14:50 AM org.jitsi.util.LoggerImpl log
SEVERE: Can not invite participant -- no bridge available.
Oct 01, 2018 10:14:51 AM org.jitsi.util.LoggerImpl log

Jicofo needs more configuration options

Hello,

First : I am a total beginner with jitsi-meet.
I wanted to only allow room creation for authed users, and guest users to only be able to join existing rooms.

I found out that to achieve this, i had to add the following : -Dorg.jitsi.jicofo.auth.URL=XMPP:$XMPP_DOMAIN

otherwise it wouldn't work.
This means i had to patch the run script, rebuild the image, then run it, for this to work.

Is there a way to do this without having to rebuild the image ?
If not, could we have a patch for this ?

Scaling Videobridge

Hi there,

Thanks for this docker which makes the install very easy.
However, I am trying to put in place a scalable architecture meaning that the Videobridge container must be able to scale and connects to prosody from another instance. What is the best way to achieve that? Is this docker suitable for such a use case?

I tried to launch the videobridge on a second EC2 instance but it seems that it can't communicate with the XMPP server properly.

Thanks

Automatic restart after boot does not work

Even though all four containers have restart: always marked, the containers do not restart automatically after a reboot... What could this be?
Now I have to run after each reboot of the server:

cd ~/<myprojects>/jitsi
docker-comnpose up -d --force-recreate
docker stats

jitsi-meet prosody modules not available

Are the jitsi-meet prosody modules available in the container?

I tried loading the mod_muc_size without any success. I've added mod_muc_size as a XMPP_MODULES and as a XMPP_MUC_MODULES in the .env file, but when I access the prosody container it's nowhere to be found.

Update images (maybe add CI)

The published image is two month old - there are newer changes in the repository.
It would be great to have them up to date. Maybe with a CI tool.

CONFERENCE FAILED: conference.setup_failed Error: ICE fail with OpenShift/Kubernetes

I tried to run jitsi on a OpenShift cluster (which is build on top of kubernetes) based on these kubernetes templates #3

@jmereaux had similar issues like he mentioned in #2 .

My problem is that after a second person joined the conversation the connection will crash within 10 seconds. In those seconds video is working fine.

Here are the errors I get after the conversation crashed:

Jitsi Meet JS console:

[conference.js] <e.value>:  CONFERENCE FAILED: conference.setup_failed Error: ICE fail
    at r.peerconnection.oniceconnectionstatechange (JingleSessionPC.js:479)
    at RTCPeerConnection.peerconnection.oniceconnectionstatechange (TraceablePeerConnection.js:252)

[JitsiMeetJS.js] <Object.getGlobalOnErrorHandler>:  UnhandledError: null Script: null Line: null Column: null StackTrace:  DOMException: play() failed because the user didn't interact with the document first. https://goo.gl/xX8pDD

Uncaught (in promise) DOMException: play() failed because the user didn't interact with the document first. https://goo.gl/xX8pDD

JVB:

JVB 2018-10-07 05:02:37.684 INFO: [748] org.ice4j.ice.ConnectivityCheckClient.log() Pair failed: 10.128.0.59:10000/udp/host -> 192.168.0.166:57713/udp/host (stream.RTP)

10.128.0.59 is the IP address of my pod (running container)
192.168.0.166 is the IP address of my PC in my local network
But I don't even understand what JVB is trying to do at this point.

Matching the configuration files of a debian setup

As @ztl8702 noticed, the configuration of jicofo and jitsi-videobridge in a docker setup does not match the one you get by installing the debian packages. Notably the properties that configure pubsub (or muc) for jicofo and jitsi-videobridge are missing.

host-unknown errors sine the last update to docker-compose.yml and .env

If I try to get the containers up with the current env example and the docker-compose.yml I get an error in the jvb container:
jvb_1 | JVB 2018-10-18 09:37:51.047 SEVERE: [24] org.jitsi.meet.ComponentMain.call().323 host-unknown, host:xmpp.meet.jitsi, port:5347

With the previous commits everything works fine.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.