aboutsummaryrefslogtreecommitdiff
path: root/app/jitsi/build/jitsi-videobridge/jvb_run
blob: c82712c39993d571ad762bc58459dc22705e236b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/bin/bash
update-ca-certificates -f

if [ -z "${JITSI_NAT_LOCAL_IP}" ]; then 
  JITSI_NAT_LOCAL_IP=$(ip route get $(ip route show 0.0.0.0/0 | grep -oP 'via \K\S+') | grep -oP 'src \K\S+')
fi

if [ -z "${JITSI_NAT_PUBLIC_IP}" ]; then
  JITSI_NAT_PUBLIC_IP=$(curl https://ifconfig.me)
fi

if [ -z "${JVB_MEMORY}" ]; then
  echo "You must set the env variable 'JVB_MEMORY'. eg: JVB_MEMORY=3072m"
  exit 1
fi

echo "NAT config: ${JITSI_NAT_LOCAL_IP} -> ${JITSI_NAT_PUBLIC_IP}"

exec java \
  -Xmx${JVB_MEMORY} \
  -XX:+UseConcMarkSweepGC \
  -XX:+HeapDumpOnOutOfMemoryError \
  -XX:HeapDumpPath=/tmp \
  -Djdk.tls.ephemeralDHKeySize=2048 \
  -Djava.util.logging.config.file=/usr/share/jvb/lib/logging.properties \
  -Dconfig.file=/etc/jitsi/videobridge.conf \
  -Dorg.ice4j.ice.harvest.NAT_HARVESTER_LOCAL_ADDRESS=${JITSI_NAT_LOCAL_IP} \
  -Dorg.ice4j.ice.harvest.NAT_HARVESTER_PUBLIC_ADDRESS=${JITSI_NAT_PUBLIC_IP} \
  -cp '/usr/share/jvb/jitsi-videobridge.jar:/usr/share/jvb/lib/*' \
  org.jitsi.videobridge.MainKt