openvidu/openvidu-server/docker/openvidu-coturn/entrypoint.sh

47 lines
1.4 KiB
Bash
Raw Normal View History

2020-03-24 12:08:36 +01:00
#!/bin/bash
# Set debug mode
DEBUG=${DEBUG:-false}
[ "$DEBUG" == "true" ] && set -x
#Check parameters
[[ ! -z "${TURN_PUBLIC_IP}" ]] && echo "TURN public IP: ${TURN_PUBLIC_IP}" ||
export TURN_PUBLIC_IP=$(curl ifconfig.co)
[[ ! -z "${TURN_LISTEN_PORT}" ]] && echo "TURN listening port: ${TURN_LISTEN_PORT}" ||
{ echo "TURN_LISTEN_PORT environment variable is not defined"; exit 1; }
[[ ! -z "${REDIS_IP}" ]] && echo "REDIS IP: ${REDIS_IP}" || { echo "REDIS_IP environment variable is not defined"; exit 1; }
[[ ! -z "${DB_NAME}" ]] || { echo "DB_NAME environment variable is not defined"; exit 1; }
[[ ! -z "${DB_PASSWORD}" ]] || { echo "DB_PASSWORD environment variable is not defined"; exit 1; }
[[ ! -z "${MIN_PORT}" ]] && echo "Defined min port coturn: ${MIN_PORT}" || echo "Min port coturn: 40000"
[[ ! -z "${MAX_PORT}" ]] && echo "Defined max port coturn: ${MAX_PORT}" || echo "Max port coturn: 65535"
# Load configuration files of coturn
source /tmp/configuration-files.sh
# Remove temp file with configuration parameters
rm /tmp/configuration-files.sh
# Save coturn External IP for other services
# Execute turn daemon
/usr/bin/turnserver -c /etc/turnserver.conf -v &
MAX_SECONDS=30
# K8s only show turn server log in this way
while [ -z $(ls /var/log/ | grep turn_) ] && [ $SECONDS -lt $MAX_SECONDS ]
do
echo "Waiting turnserver to be running"
sleep 2
done
tail -f /var/log/turn_*.log