Skip to content
This repository has been archived by the owner on Dec 14, 2021. It is now read-only.

Commit

Permalink
🎉 no 'core' and dependency on the ubuntu repository anymore! (rewrite…
Browse files Browse the repository at this point in the history
… of bbb-web)
  • Loading branch information
alangecker committed Oct 28, 2020
1 parent 22abd96 commit deef2b2
Show file tree
Hide file tree
Showing 6 changed files with 571 additions and 3 deletions.
5 changes: 2 additions & 3 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
version: '3.6'

services:
core:
build: mod/core
bbb-web:
build: mod/bbb-web
restart: unless-stopped
depends_on:
- redis
Expand Down Expand Up @@ -117,7 +117,6 @@ services:
depends_on:
- redis
- kurento
- core
environment:
CLIENT_HOST: 0.0.0.0
KURENTO_NAME: kurento
Expand Down
100 changes: 100 additions & 0 deletions mod/bbb-web/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
FROM mozilla/sbt:8u181_1.2.7 AS builder

RUN apt-get update && apt-get install -y subversion

# download bbb-common-message
ENV TAG_COMMON_MESSAGE v2.3-alpha-2
RUN svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG_COMMON_MESSAGE/bbb-common-message /bbb-common-message \
&& rm -rf /bbb-common-message/.svn

# compile bbb-common-message
RUN cd /bbb-common-message \
&& ./deploy.sh

# ===================================================

# install grails
RUN cd /opt \
&& wget https://github.com/grails/grails-core/releases/download/v3.3.9/grails-3.3.9.zip \
&& unzip grails-3.3.9.zip
ENV PATH="/opt/grails-3.3.9/bin:${PATH}"

# install gradle
RUN cd /opt \
&& wget https://services.gradle.org/distributions/gradle-6.7-bin.zip \
&& unzip gradle-6.7-bin
ENV PATH="/opt/gradle-6.7/bin:${PATH}"

# download bbb-common-web
ENV TAG_COMMON_WEB v2.3-alpha-2
RUN svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG_COMMON_WEB/bbb-common-web /bbb-common-web \
&& rm -rf /bbb-common-message/.svn

# compile bbb-common-web
RUN cd /bbb-common-web \
&& ./deploy.sh

# download bbb-web
ENV TAG_WEB v2.3-alpha-2
RUN svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG_WEB/bigbluebutton-web /bbb-web \
&& rm -rf /bbb-web/.svn

# compile bbb-web
RUN cd /bbb-web && grails assemble

# compile pres-checker
RUN cd /bbb-web/pres-checker && gradle resolveDeps



# ===================================================
FROM openjdk:8-jre-slim-buster

RUN apt-get update && apt-get install -y \
wget unzip gosu socat locales \
imagemagick xpdf-utils

# set locale
RUN sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && locale-gen
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8


# add user & group
RUN groupadd -g 998 bigbluebutton && useradd -m -u 998 -g bigbluebutton bigbluebutton

# add dockerize
ENV DOCKERIZE_VERSION v0.6.1
RUN wget https://github.com/jwilder/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz \
&& tar -C /usr/local/bin -xzvf dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz \
&& rm dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz


# add blank presentation files and allow conversation to pdf/svg
RUN mkdir -p /usr/share/bigbluebutton/blank \
&& cd /usr/share/bigbluebutton/blank \
&& wget \
https://raw.githubusercontent.com/bigbluebutton/bigbluebutton/v2.3-alpha-2/bigbluebutton-config/slides/blank-svg.svg \
https://raw.githubusercontent.com/bigbluebutton/bigbluebutton/v2.3-alpha-2/bigbluebutton-config/slides/blank-thumb.png \
https://raw.githubusercontent.com/bigbluebutton/bigbluebutton/v2.3-alpha-2/bigbluebutton-config/slides/blank-presentation.pdf \
https://raw.githubusercontent.com/bigbluebutton/bigbluebutton/v2.3-alpha-2/bigbluebutton-config/slides/blank-png.png \
&& sed -i 's/<policy domain="coder" rights="none" pattern="PDF" \/>/<policy domain="coder" rights="write" pattern="PDF" \/>/g' /etc/ImageMagick-6/policy.xml

# get and extract bbb-web
COPY --from=builder /bbb-web/build/libs/bigbluebutton-0.10.0.war /bigbluebutton-0.10.0.war
RUN mkdir -p /usr/share/bbb-web \
&& cd /usr/share/bbb-web \
&& unzip -q /bigbluebutton-0.10.0.war -d /usr/share/bbb-web

# get pres-checker
COPY --from=builder /bbb-web/pres-checker/lib /usr/share/prescheck/lib
COPY --from=builder /bbb-web/pres-checker/run.sh /usr/share/prescheck/prescheck.sh

# add entrypoint and templates
COPY entrypoint.sh /entrypoint.sh
COPY bigbluebutton.properties /usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties.tmpl
COPY turn-stun-servers.xml /usr/share/bbb-web/WEB-INF/classes/spring/turn-stun-servers.xml.tmpl
COPY logback.xml /usr/share/bbb-web/WEB-INF/classes/logback.xml

ENTRYPOINT ["/entrypoint.sh"]
Loading

0 comments on commit deef2b2

Please sign in to comment.