#!/bin/bash # # Federated Computer Jitsi Service PATH=$HOME/.docker/cli-plugins:/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin config_jitsi() { echo -ne "\n* Configuring fstack/jitsi container.." spin & SPINPID=$! if [ ! -d "fstack/jitsi" ]; then mkdir -p fstack/jitsi # mkdir -p fstack/jitsi/data/config/keys &> /dev/null # cp -rf fstack/dns/data/etc/letsencrypt/archive/$DOMAIN/*.pem fstack/jitsi/data/config/keys # mv fstack/jitsi/data/config/keys/fullchain1.pem fstack/jitsi/data/config/keys/cert.crt # mv fstack/jitsi/data/config/keys/privkey1.pem fstack/jitsi/data/config/keys/cert.key # chmod 644 fstack/jitsi/data/config/keys/*.pem fi DOMAIN_ARRAY=(${DOMAIN//./ }) DOMAIN_FIRST=${DOMAIN_ARRAY[0]} DOMAIN_LAST=${DOMAIN_ARRAY[1]} # Extract Jitsi into fstack/jitsi tar zxvf fstack/files/jitsi/stable-* --strip-components 1 -C fstack/jitsi &> /dev/null [ $? -ne 0 ] && fail "Couldn't extract files/jitsi/stable* into fstack/jitsi" # Create docker compose file cat > fstack/jitsi/docker-compose.yml < fstack/jitsi/.env < /dev/null echo -ne "done." } start_jitsi() { # Start fstack/jitsi with output to /dev/null echo -ne "\n* Starting fstack/jitsi service.." spin & SPINPID=$! if [ $DEBUG ]; then # Start fstack/jitsi with output to console for debug cd fstack/jitsi && docker-compose -f docker-compose.yml -p jitsi up [ $? -eq 0 ] && echo -ne "done.\n" || fail "There was a problem starting service fstack/jitsi" else cd fstack/jitsi && docker-compose -f docker-compose.yml -p jitsi up -d &> /dev/null # Keep trying jitsi port 443 to make sure it's up # before we proceed RETRY="30" while [ $RETRY -gt 0 ]; do nc -z 172.99.0.25 443 &> /dev/null if [ $? -eq 0 ]; then break else if [ "$RETRY" == 1 ]; then docker-compose -f docker-compose.yml -p jitsi down &> /dev/null kill -9 $SPINPID &> /dev/null fail "There was a problem starting service fstack/jitsi\nCheck the output of 'docker logs jitsi' or turn on\ndebug with -d" fi ((RETRY--)) sleep 7 fi done fi kill -9 $SPINPID &> /dev/null echo -ne "done." }