2021-06-02 23:25:21 +02:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
# Check if the container is started for the first time
|
|
|
|
if [ ! -f /setup.lock ]; then
|
|
|
|
|
|
|
|
# Get valid stream key
|
|
|
|
if [[ ! -z "$STREAM_KEY" ]]; then
|
|
|
|
VALID_STREAM_KEY=$STREAM_KEY
|
|
|
|
else
|
|
|
|
VALID_STREAM_KEY=$(tr -dc A-Za-z0-9 </dev/urandom | head -c 48)
|
|
|
|
echo "Your auto-generated stream key is: $VALID_STREAM_KEY"
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Check if tls should be enabled
|
|
|
|
if [[ ! -z "$TLS_CERT" ]]; then
|
|
|
|
# Build nginx.conf for RTMPS
|
|
|
|
cp /template/nginx-ssl.conf.skel /etc/nginx/nginx.conf
|
|
|
|
sed -i "s/{CERT_NAME}/$TLS_CERT/g" /etc/nginx/nginx.conf
|
|
|
|
sed -i "s/{KEY_NAME}/$TLS_KEY/g" /etc/nginx/nginx.conf
|
|
|
|
else
|
|
|
|
# nginx.conf without ssl
|
|
|
|
cp /template/nginx.conf.skel /etc/nginx/nginx.conf
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Complete nginx config
|
|
|
|
sed -i "s/{RTMP_PORT}/$RTMP_PORT/g" /etc/nginx/nginx.conf
|
|
|
|
sed -i "s/{STREAM_KEY}/$VALID_STREAM_KEY/g" /etc/nginx/nginx.conf
|
|
|
|
sed -i "s/{HTTP_PORT}/$HTTP_PORT/g" /etc/nginx/nginx.conf
|
2021-06-04 21:38:26 +02:00
|
|
|
sed -i "s/{HLS_FRAGMENT_LENGTH}/$HLS_FRAGMENT_LENGTH/g" /etc/nginx/nginx.conf
|
|
|
|
sed -i "s/{HLS_PLAYLIST_LENGTH}/$HLS_PLAYLIST_LENGTH/g" /etc/nginx/nginx.conf
|
2021-06-02 23:25:21 +02:00
|
|
|
|
|
|
|
# Touch setup lock
|
|
|
|
touch /setup.lock
|
|
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
echo "Init done. Starting nginx..."
|
|
|
|
|
|
|
|
exec "$@"
|