openvidu-local-deployment/openvidu_linux.sh

82 lines
1.6 KiB
Bash
Executable File

#!/bin/sh
showHelp() {
echo ""
echo "Run OpenVidu Local Deployment in Linux"
echo ""
echo "-------"
echo " Usage "
echo "-------"
echo " $0 <command>"
echo ""
echo "----------"
echo " Commands "
echo "----------"
echo " start - Start OpenVidu"
echo " stop - Stop OpenVidu"
echo " help - Show this help"
echo ""
}
getPrivateIp() {
ip="$(ip route get 8.8.8.8 | sed -n '/src/{s/.*src *\([^ ]*\).*/\1/p;q}')"
echo "$ip"
}
# Flags
START=false
STOP=false
if [ -n "${1:-}" ]; then
while :; do
case "${1:-}" in
start)
START=true
shift 1
break
;;
stop)
STOP=true
shift 1
break
;;
help)
showHelp
exit 0
;;
*)
echo "Not a valid command. For usage information: \"$0 help\""
exit 1
;;
esac
done
else
showHelp
exit
fi
if [ "$START" = "true" ]; then
# Load environment variables
if [ -f .env ]; then
export $(grep -v '^#' .env | xargs)
fi
if [ "$LAN_PRIVATE_IP" = "auto" ]; then
LAN_PRIVATE_IP="$(getPrivateIp)"
if [ -z "$LAN_PRIVATE_IP" ]; then
LAN_PRIVATE_IP=none
fi
export LAN_PRIVATE_IP
fi
echo "Starting OpenVidu..."
export RUN_WITH_SCRIPT=true
docker compose down --volumes
docker compose up
fi
if [ "$STOP" = "true" ]; then
echo "Stopping OpenVidu"
docker compose down --volumes
fi