12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- #!/usr/bin/with-contenv bash
- # make our folders
- mkdir -p \
- /config/{nginx/site-confs,keys} \
- /run \
- /var/lib/nginx/tmp/client_body \
- /var/tmp/nginx
- # generate keys (maybe)
- if [[ $DISABLE_HTTPS -ne 1 ]]; then
- if [[ $ENABLE_LETSENCRYPT -eq 1 ]]; then
- if [[ ! -f /etc/letsencrypt/live/$LETSENCRYPT_DOMAIN/fullchain.pem ]]; then
- certbot certonly \
- --noninteractive \
- --standalone \
- --preferred-challenges http \
- -d $LETSENCRYPT_DOMAIN \
- --agree-tos \
- --email $LETSENCRYPT_EMAIL
- fi
- # remove default certbot renewal
- if [[ -f /etc/cron.d/certbot ]]; then
- rm /etc/cron.d/certbot
- fi
- # setup certbot renewal script
- if [[ ! -f /etc/cron.daily/letencrypt-renew ]]; then
- cp /defaults/letsencrypt-renew /etc/cron.daily/
- fi
- else
- # use self-signed certs
- if [[ -f /config/keys/cert.key && -f /config/keys/cert.crt ]]; then
- echo "using keys found in /config/keys"
- else
- echo "generating self-signed keys in /config/keys, you can replace these with your own keys if required"
- SUBJECT="/C=US/ST=TX/L=Austin/O=jitsi.org/OU=Jitsi Server/CN=*"
- openssl req -new -x509 -days 3650 -nodes -out /config/keys/cert.crt -keyout /config/keys/cert.key -subj "$SUBJECT"
- fi
- fi
- if [[ ! -f /config/nginx/dhparams.pem ]]; then
- openssl dhparam -out /config/nginx/dhparams.pem 2048
- fi
- fi
- # copy config files
- if [[ ! -f /config/nginx/nginx.conf ]]; then
- cp /defaults/nginx.conf /config/nginx/nginx.conf
- fi
- if [[ ! -f /config/nginx/meet.conf ]]; then
- tpl /defaults/meet.conf > /config/nginx/meet.conf
- fi
- if [[ ! -f /config/nginx/ssl.conf ]]; then
- tpl /defaults/ssl.conf > /config/nginx/ssl.conf
- fi
- if [[ ! -f /config/nginx/site-confs/default ]]; then
- tpl /defaults/default > /config/nginx/site-confs/default
- fi
- if [[ $ENABLE_CDN -eq 1 || x$ENABLE_CDN == xtrue ]]; then
- [ -z "$CDN_URL" ] && CDN_URL="https://web-cdn.jitsi.net/"
- export BV=$(dpkg -s jitsi-meet-web | grep Version | awk '{print $2}'| cut -d'.' -f3 | cut -d'-' -f1)
- echo "<base href=\"${CDN_URL}${BV}/\" />" > /usr/share/jitsi-meet/base.html
- fi
- if [[ ! -f /config/config.js ]]; then
- [ -z "$XMPP_MUC_DOMAIN" ] && export XMPP_MUC_DOMAIN="conference.$XMPP_DOMAIN"
- [ -z "$XMPP_RECORDER_DOMAIN" ] && export XMPP_RECORDER_DOMAIN="recorder.$XMPP_DOMAIN"
- tpl /defaults/config.js > /config/config.js
- fi
- if [[ ! -f /config/interface_config.js ]]; then
- cp /defaults/interface_config.js /config/interface_config.js
- # It will remove parameter 'closedcaptions' from TOOLBAR_BUTTONS if ENABLE_TRANSCRIPTIONS is false,
- # because it enabled by default, but not supported out of the box.
- if [[ $ENABLE_TRANSCRIPTIONS -ne 1 || "$ENABLE_TRANSCRIPTIONS" != "true" ]]; then
- sed -i \
- -e "s#'closedcaptions', ##" \
- /config/interface_config.js
- fi
- fi
- # copy app files
- if [[ ! -f /config/apple-app-site-configuration ]]; then
- cp /defaults/nginx.conf /config/nginx/nginx.conf
- fi
|