mirror of
https://github.com/bigbluebutton/docker.git
synced 2025-01-12 16:58:13 +01:00
v2.3: dockerized libreoffice
This commit is contained in:
parent
5464ee6c1a
commit
7add88578e
@ -6,6 +6,7 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
depends_on:
|
depends_on:
|
||||||
- redis
|
- redis
|
||||||
|
- libreoffice
|
||||||
environment:
|
environment:
|
||||||
DEV_MODE: ${DEV_MODE:-}
|
DEV_MODE: ${DEV_MODE:-}
|
||||||
DOMAIN: ${DOMAIN}
|
DOMAIN: ${DOMAIN}
|
||||||
@ -20,6 +21,7 @@ services:
|
|||||||
- bigbluebutton:/var/bigbluebutton
|
- bigbluebutton:/var/bigbluebutton
|
||||||
- vol-freeswitch:/var/freeswitch/meetings
|
- vol-freeswitch:/var/freeswitch/meetings
|
||||||
- vol-kurento:/var/kurento
|
- vol-kurento:/var/kurento
|
||||||
|
- vol-libreoffice:/var/tmp/soffice
|
||||||
networks:
|
networks:
|
||||||
bbb-net:
|
bbb-net:
|
||||||
ipv4_address: 10.7.7.2
|
ipv4_address: 10.7.7.2
|
||||||
@ -165,6 +167,17 @@ services:
|
|||||||
bbb-net:
|
bbb-net:
|
||||||
ipv4_address: 10.7.7.14
|
ipv4_address: 10.7.7.14
|
||||||
|
|
||||||
|
libreoffice:
|
||||||
|
build: mod/libreoffice
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- vol-libreoffice:/var/tmp/soffice
|
||||||
|
tmpfs:
|
||||||
|
- /tmp
|
||||||
|
networks:
|
||||||
|
bbb-net:
|
||||||
|
ipv4_address: 10.7.7.7
|
||||||
|
|
||||||
periodic:
|
periodic:
|
||||||
build: mod/periodic
|
build: mod/periodic
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
@ -181,7 +194,11 @@ volumes:
|
|||||||
bigbluebutton:
|
bigbluebutton:
|
||||||
vol-freeswitch:
|
vol-freeswitch:
|
||||||
vol-kurento:
|
vol-kurento:
|
||||||
|
<<<<<<< HEAD
|
||||||
html5-static:
|
html5-static:
|
||||||
|
=======
|
||||||
|
vol-libreoffice:
|
||||||
|
>>>>>>> b6193c1 (v2.3: dockerized libreoffice)
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
bbb-net:
|
bbb-net:
|
||||||
|
@ -17,7 +17,10 @@ RUN wget https://github.com/jwilder/dockerize/releases/download/$DOCKERIZE_VERSI
|
|||||||
# RUN apt-get install -y tcpdump telnet htop vim
|
# RUN apt-get install -y tcpdump telnet htop vim
|
||||||
|
|
||||||
# -- Install Dependencies
|
# -- Install Dependencies
|
||||||
RUN apt-get install -y supervisor apt-transport-https equivs haveged fonts-crosextra-carlito fonts-crosextra-caladea fonts-noto net-tools
|
RUN apt-get install -y supervisor apt-transport-https equivs haveged fonts-crosextra-carlito fonts-crosextra-caladea fonts-noto net-tools socat
|
||||||
|
|
||||||
|
# add bigbluebutton user manually so the ID is constant
|
||||||
|
RUN groupadd -g 998 bigbluebutton && useradd -m -u 998 -g bigbluebutton bigbluebutton
|
||||||
|
|
||||||
# bbb repo & packages
|
# bbb repo & packages
|
||||||
RUN LC_CTYPE=C.UTF-8 add-apt-repository ppa:bigbluebutton/support
|
RUN LC_CTYPE=C.UTF-8 add-apt-repository ppa:bigbluebutton/support
|
||||||
@ -43,7 +46,6 @@ RUN echo '#!/bin/bash\necho "mocking: systemctl $@"' > /usr/bin/systemctl && chm
|
|||||||
# rebuilding from here on if changed
|
# rebuilding from here on if changed
|
||||||
ENV VERSION v2.3-alpha-2
|
ENV VERSION v2.3-alpha-2
|
||||||
|
|
||||||
RUN apt-get update && apt-get install -y openjdk-8-jre-headless poppler-utils imagemagick
|
|
||||||
RUN apt-get update && apt-get install -y bbb-web bbb-apps-akka
|
RUN apt-get update && apt-get install -y bbb-web bbb-apps-akka
|
||||||
|
|
||||||
# add blank presentation files and allow conversation to pdf/svg
|
# add blank presentation files and allow conversation to pdf/svg
|
||||||
|
@ -15,12 +15,3 @@ stdout_logfile=/dev/fd/1
|
|||||||
stdout_logfile_maxbytes=0
|
stdout_logfile_maxbytes=0
|
||||||
stderr_logfile=/dev/fd/2
|
stderr_logfile=/dev/fd/2
|
||||||
stderr_logfile_maxbytes=0
|
stderr_logfile_maxbytes=0
|
||||||
|
|
||||||
[program:bbb-transcode-akka]
|
|
||||||
command=/usr/local/bin/prefix-log /usr/share/bbb-transcode-akka/bin/bbb-transcode-akka
|
|
||||||
user=bigbluebutton
|
|
||||||
directory=/usr/share/bbb-transcode-akka
|
|
||||||
stdout_logfile=/dev/fd/1
|
|
||||||
stdout_logfile_maxbytes=0
|
|
||||||
stderr_logfile=/dev/fd/2
|
|
||||||
stderr_logfile_maxbytes=0
|
|
@ -1,4 +1,12 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
# forward libreoffice ports to this container
|
||||||
|
for i in `seq 1 4` ; do
|
||||||
|
let PORT=8200+${i}
|
||||||
|
echo "forward port $PORT to the libreoffice container"
|
||||||
|
socat TCP-LISTEN:$PORT,fork TCP:10.7.7.7:$PORT &
|
||||||
|
done
|
||||||
|
|
||||||
java -Dgrails.env=prod -Dserver.address=0.0.0.0 -Dserver.port=8090 -Xms384m -Xmx384m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/var/bigbluebutton/diagnostics -cp WEB-INF/lib/*:/:WEB-INF/classes/:. org.springframework.boot.loader.WarLauncher
|
java -Dgrails.env=prod -Dserver.address=0.0.0.0 -Dserver.port=8090 -Xms384m -Xmx384m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/var/bigbluebutton/diagnostics -cp WEB-INF/lib/*:/:WEB-INF/classes/:. org.springframework.boot.loader.WarLauncher
|
||||||
|
|
||||||
|
|
||||||
|
11
mod/libreoffice/Dockerfile
Normal file
11
mod/libreoffice/Dockerfile
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
FROM woahbase/alpine-libreoffice
|
||||||
|
|
||||||
|
USER root
|
||||||
|
|
||||||
|
RUN apk add su-exec
|
||||||
|
# should use the same user ID as in `core` to avoid file permission issues
|
||||||
|
RUN addgroup -g 998 bigbluebutton && adduser -D -u 998 -G bigbluebutton bigbluebutton
|
||||||
|
COPY entrypoint.sh /entrypoint.sh
|
||||||
|
|
||||||
|
|
||||||
|
ENTRYPOINT /entrypoint.sh
|
21
mod/libreoffice/entrypoint.sh
Executable file
21
mod/libreoffice/entrypoint.sh
Executable file
@ -0,0 +1,21 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
set -e
|
||||||
|
|
||||||
|
for i in `seq 1 4` ; do
|
||||||
|
|
||||||
|
SOFFICE_WORK_DIR="/var/tmp/soffice/instance_"`printf "%02d\n" ${i}`
|
||||||
|
mkdir -p $SOFFICE_WORK_DIR
|
||||||
|
chown bigbluebutton:bigbluebutton $SOFFICE_WORK_DIR
|
||||||
|
|
||||||
|
# Initialize environment
|
||||||
|
su-exec bigbluebutton /usr/lib/libreoffice/program/soffice.bin -env:UserInstallation="file:///tmp/office_${i}/"
|
||||||
|
done
|
||||||
|
|
||||||
|
|
||||||
|
for i in `seq 1 4` ; do
|
||||||
|
let PORT=8200+${i}
|
||||||
|
echo "start libreoffice on port ${PORT}"
|
||||||
|
su-exec bigbluebutton /usr/lib/libreoffice/program/soffice.bin --accept="socket,host=0.0.0.0,port=$PORT,tcpNoDelay=1;urp;StarOffice.ServiceManager" --headless --invisible --nocrashreport --nodefault --nofirststartwizard --nolockcheck --nologo --norestore -env:UserInstallation="file:///tmp/office_${i}/" &
|
||||||
|
done
|
||||||
|
|
||||||
|
wait $!
|
Loading…
Reference in New Issue
Block a user