serve presentations via nginx

This commit is contained in:
chandi 2020-04-11 11:29:50 +02:00
parent 6248c9f93b
commit c348db8779
3 changed files with 37 additions and 31 deletions

View File

@ -20,6 +20,7 @@ services:
- /run/lock
- /tmp:exec,mode=777
volumes:
- bigbluebutton:/var/bigbluebutton
- /sys/fs/cgroup:/sys/fs/cgroup:ro # for systemd
- ./mod/core/entrypoint.sh:/entrypoint.sh
- ./mod/core/red5.properties:/usr/share/red5/conf/red5.properties
@ -44,6 +45,7 @@ services:
ports:
- "80:80"
volumes:
- bigbluebutton:/var/bigbluebutton
- ./mod/nginx/bbb:/etc/nginx/bbb
- ./mod/nginx/bigbluebutton:/etc/nginx/conf.d/default.conf
networks:
@ -131,6 +133,10 @@ services:
- ./mod/html5/entrypoint.sh:/entrypoint.sh
- ./mod/html5/settings.yml:/app/programs/server/assets/app/config/settings.yml.tmpl
volumes:
bigbluebutton:
networks:
bluenet:
ipam:

View File

@ -19,23 +19,23 @@
# Have nginx serve the presentation slides instead of tomcat as large files
# causes tomcat to OOM. (ralam sept 20, 2018)
# location ~^\/bigbluebutton\/presentation\/(?<meeting_id_1>[A-Za-z0-9\-]+)\/(?<meeting_id_2>[A-Za-z0-9\-]+)\/(?<pres_id>[A-Za-z0-9\-]+)\/svg\/(?<page_num>\d+)$ {
# default_type image/svg+xml;
# alias /var/bigbluebutton/$meeting_id_2/$meeting_id_2/$pres_id/svgs/slide$page_num.svg;
# }
location ~^\/bigbluebutton\/presentation\/(?<meeting_id_1>[A-Za-z0-9\-]+)\/(?<meeting_id_2>[A-Za-z0-9\-]+)\/(?<pres_id>[A-Za-z0-9\-]+)\/svg\/(?<page_num>\d+)$ {
default_type image/svg+xml;
alias /var/bigbluebutton/$meeting_id_2/$meeting_id_2/$pres_id/svgs/slide$page_num.svg;
}
# location ~^\/bigbluebutton\/presentation\/(?<meeting_id_1>[A-Za-z0-9\-]+)\/(?<meeting_id_2>[A-Za-z0-9\-]+)\/(?<pres_id>[A-Za-z0-9\-]+)\/slide\/(?<page_num>\d+)$ {
# alias /var/bigbluebutton/$meeting_id_2/$meeting_id_2/$pres_id/slide-$page_num.swf;
# }
location ~^\/bigbluebutton\/presentation\/(?<meeting_id_1>[A-Za-z0-9\-]+)\/(?<meeting_id_2>[A-Za-z0-9\-]+)\/(?<pres_id>[A-Za-z0-9\-]+)\/slide\/(?<page_num>\d+)$ {
alias /var/bigbluebutton/$meeting_id_2/$meeting_id_2/$pres_id/slide-$page_num.swf;
}
# location ~^\/bigbluebutton\/presentation\/(?<meeting_id_1>[A-Za-z0-9\-]+)\/(?<meeting_id_2>[A-Za-z0-9\-]+)\/(?<pres_id>[A-Za-z0-9\-]+)\/thumbnail\/(?<page_num>\d+)$ {
# default_type image/png;
# alias /var/bigbluebutton/$meeting_id_2/$meeting_id_2/$pres_id/thumbnails/thumb-$page_num.png;
# }
location ~^\/bigbluebutton\/presentation\/(?<meeting_id_1>[A-Za-z0-9\-]+)\/(?<meeting_id_2>[A-Za-z0-9\-]+)\/(?<pres_id>[A-Za-z0-9\-]+)\/thumbnail\/(?<page_num>\d+)$ {
default_type image/png;
alias /var/bigbluebutton/$meeting_id_2/$meeting_id_2/$pres_id/thumbnails/thumb-$page_num.png;
}
# location ~^\/bigbluebutton\/presentation\/(?<meeting_id_1>[A-Za-z0-9\-]+)\/(?<meeting_id_2>[A-Za-z0-9\-]+)\/(?<pres_id>[A-Za-z0-9\-]+)\/textfiles\/(?<page_num>\d+)$ {
# default_type text/plain;
# alias /var/bigbluebutton/$meeting_id_2/$meeting_id_2/$pres_id/textfiles/slide-$page_num.txt;
# }
location ~^\/bigbluebutton\/presentation\/(?<meeting_id_1>[A-Za-z0-9\-]+)\/(?<meeting_id_2>[A-Za-z0-9\-]+)\/(?<pres_id>[A-Za-z0-9\-]+)\/textfiles\/(?<page_num>\d+)$ {
default_type text/plain;
alias /var/bigbluebutton/$meeting_id_2/$meeting_id_2/$pres_id/textfiles/slide-$page_num.txt;
}

View File

@ -16,21 +16,21 @@
# with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
#
# location /playback/presentation/playback.html {
# return 301 /playback/presentation/0.81/playback.html?$query_string;
# # If you have recordings from 0.9.0 beta versions and are sure
# # that you will never want to play recordings made with
# # BigBlueButton 0.81, comment the line above and uncomment the
# # following line:
# #return 301 /playback/presentation/0.9.0/playback.html?$query_string;
# }
location /playback/presentation/playback.html {
return 301 /playback/presentation/0.81/playback.html?$query_string;
# If you have recordings from 0.9.0 beta versions and are sure
# that you will never want to play recordings made with
# BigBlueButton 0.81, comment the line above and uncomment the
# following line:
#return 301 /playback/presentation/0.9.0/playback.html?$query_string;
}
# location /playback/presentation {
# root /var/bigbluebutton;
# index index.html index.htm;
# }
location /playback/presentation {
root /var/bigbluebutton;
index index.html index.htm;
}
# location /presentation {
# root /var/bigbluebutton/published;
# index index.html index.htm;
# }
location /presentation {
root /var/bigbluebutton/published;
index index.html index.htm;
}