mirror of
https://github.com/bigbluebutton/docker.git
synced 2024-11-21 23:53:11 +01:00
all tags specified in one file and images built with official docker-bbb-build image
This commit is contained in:
parent
1987916e2c
commit
83eee18228
9
.gitmodules
vendored
9
.gitmodules
vendored
@ -7,3 +7,12 @@
|
||||
[submodule "mod/etherpad/bbb-etherpad-plugin"]
|
||||
path = mod/etherpad/bbb-etherpad-plugin
|
||||
url = https://github.com/alangecker/bbb-etherpad-plugin
|
||||
[submodule "mod/bbb-pads/bbb-pads"]
|
||||
path = mod/bbb-pads/bbb-pads
|
||||
url = https://github.com/bigbluebutton/bbb-pads
|
||||
[submodule "mod/webhooks/bbb-webhooks"]
|
||||
path = mod/webhooks/bbb-webhooks
|
||||
url = https://github.com/bigbluebutton/bbb-webhooks
|
||||
[submodule "mod/nginx/bbb-playback"]
|
||||
path = mod/nginx/bbb-playback
|
||||
url = https://github.com/bigbluebutton/bbb-playback
|
||||
|
@ -7,7 +7,11 @@ version: '3.6'
|
||||
|
||||
# html5 templates
|
||||
x-html5-backend: &html5backend
|
||||
build: mod/html5
|
||||
build:
|
||||
context: mod/html5
|
||||
args:
|
||||
BBB_BUILD_TAG: {{ .Env.BBB_BUILD_TAG }}
|
||||
TAG_HTML5: {{ .Env.TAG_HTML5 }}
|
||||
image: bbb-html5
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
@ -39,7 +43,12 @@ x-html5-frontend: &html5frontend
|
||||
|
||||
services:
|
||||
bbb-web:
|
||||
build: mod/bbb-web
|
||||
build:
|
||||
context: mod/bbb-web
|
||||
args:
|
||||
BBB_BUILD_TAG: {{ .Env.BBB_BUILD_TAG }}
|
||||
TAG_COMMON_MESSAGE: {{ .Env.TAG_COMMON_MESSAGE }}
|
||||
TAG_BBB_WEB: {{ .Env.TAG_BBB_WEB }}
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
- redis
|
||||
@ -94,7 +103,11 @@ services:
|
||||
|
||||
|
||||
freeswitch:
|
||||
build: mod/freeswitch
|
||||
container_name: bbb-freeswitch
|
||||
build:
|
||||
context: mod/freeswitch
|
||||
args:
|
||||
TAG_FS_CONFIG: {{ .Env.TAG_FS_CONFIG }}
|
||||
restart: unless-stopped
|
||||
cap_add:
|
||||
- IPC_LOCK
|
||||
@ -119,7 +132,10 @@ services:
|
||||
network_mode: host
|
||||
|
||||
nginx:
|
||||
build: mod/nginx
|
||||
build:
|
||||
context: mod/nginx
|
||||
args:
|
||||
TAG_LEARNING_DASHBOARD: {{ .Env.TAG_LEARNING_DASHBOARD }}
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
- etherpad
|
||||
@ -192,7 +208,10 @@ services:
|
||||
- vol-kurento:/var/kurento
|
||||
|
||||
webrtc-sfu:
|
||||
build: mod/webrtc-sfu
|
||||
build:
|
||||
context: mod/webrtc-sfu
|
||||
args:
|
||||
BBB_BUILD_TAG: {{ .Env.BBB_BUILD_TAG }}
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
- redis
|
||||
@ -217,10 +236,16 @@ services:
|
||||
ipv4_address: 10.7.7.10
|
||||
|
||||
fsesl-akka:
|
||||
build: mod/fsesl-akka
|
||||
build:
|
||||
context: mod/fsesl-akka
|
||||
args:
|
||||
BBB_BUILD_TAG: {{ .Env.BBB_BUILD_TAG }}
|
||||
TAG_COMMON_MESSAGE: {{ .Env.TAG_COMMON_MESSAGE }}
|
||||
TAG_FSESL_AKKA: {{ .Env.TAG_FSESL_AKKA }}
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
- redis
|
||||
- freeswitch
|
||||
environment:
|
||||
FSESL_PASSWORD: ${FSESL_PASSWORD:-ClueCon}
|
||||
networks:
|
||||
@ -228,7 +253,12 @@ services:
|
||||
ipv4_address: 10.7.7.14
|
||||
|
||||
apps-akka:
|
||||
build: mod/apps-akka
|
||||
build:
|
||||
context: mod/apps-akka
|
||||
args:
|
||||
BBB_BUILD_TAG: {{ .Env.BBB_BUILD_TAG }}
|
||||
TAG_COMMON_MESSAGE: {{ .Env.TAG_COMMON_MESSAGE }}
|
||||
TAG_APPS_AKKA: {{ .Env.TAG_APPS_AKKA }}
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
- redis
|
||||
@ -275,7 +305,11 @@ services:
|
||||
{{ if isTrue .Env.ENABLE_RECORDING }}
|
||||
# recordings
|
||||
recordings:
|
||||
build: mod/recordings
|
||||
build:
|
||||
context: mod/recordings
|
||||
args:
|
||||
BBB_BUILD_TAG: {{ .Env.BBB_BUILD_TAG }}
|
||||
TAG_RECORDINGS: {{ .Env.TAG_RECORDINGS }}
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
- redis
|
||||
|
@ -1,21 +1,19 @@
|
||||
FROM mozilla/sbt:8u212_1.2.8 AS builder
|
||||
ARG BBB_BUILD_TAG
|
||||
FROM gitlab.senfcall.de:5050/senfcall-public/docker-bbb-build:$BBB_BUILD_TAG AS builder
|
||||
|
||||
RUN apt-get update && apt-get install -y subversion
|
||||
ARG TAG_COMMON_MESSAGE
|
||||
|
||||
# download bbb-common-message
|
||||
ENV TAG_COMMON_MESSAGE v2.4.5
|
||||
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
|
||||
|
||||
&& cd /bbb-common-message \
|
||||
&& ./deploy.sh \
|
||||
&& rm -rf /bbb-common-message
|
||||
|
||||
# ===================================================
|
||||
|
||||
ENV TAG v2.4.5
|
||||
RUN svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG/akka-bbb-apps /source \
|
||||
ARG TAG_APPS_AKKA
|
||||
|
||||
RUN svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG_APPS_AKKA/akka-bbb-apps /source \
|
||||
&& rm -rf /source/.svn
|
||||
|
||||
# compile and unzip bin
|
||||
@ -25,24 +23,12 @@ RUN cd /source \
|
||||
|
||||
# ===================================================
|
||||
|
||||
FROM openjdk:8-jre-slim-bullseye
|
||||
|
||||
RUN apt update && apt-get install -y wget gosu
|
||||
|
||||
# install dockerize
|
||||
ENV DOCKERIZE_VERSION v0.6.1
|
||||
RUN wget -q 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
|
||||
|
||||
RUN groupadd -g 998 bigbluebutton \
|
||||
&& useradd -m -u 998 -g bigbluebutton bigbluebutton
|
||||
FROM bbb-docker-base-java
|
||||
|
||||
COPY --from=builder /bbb-apps-akka-0.0.4 /bbb-apps-akka
|
||||
COPY bbb-apps-akka.conf /etc/bigbluebutton/bbb-apps-akka.conf.tmpl
|
||||
COPY logback.xml /bbb-apps-akka/conf/logback.xml
|
||||
COPY entrypoint.sh /entrypoint.sh
|
||||
|
||||
WORKDIR /bbb-apps-akka
|
||||
CMD dockerize \
|
||||
-template /etc/bigbluebutton/bbb-apps-akka.conf.tmpl:/etc/bigbluebutton/bbb-apps-akka.conf \
|
||||
gosu bigbluebutton /bbb-apps-akka/bin/bbb-apps-akka
|
||||
USER bigbluebutton
|
||||
ENTRYPOINT /entrypoint.sh
|
||||
|
@ -6,8 +6,8 @@ redis {
|
||||
}
|
||||
|
||||
services {
|
||||
bbbWebAPI="https://{{ .Env.DOMAIN }}/bigbluebutton/api"
|
||||
sharedSecret="{{ .Env.SHARED_SECRET }}"
|
||||
bbbWebAPI="https://DOMAIN/bigbluebutton/api"
|
||||
sharedSecret="SHARED_SECRET"
|
||||
}
|
||||
http {
|
||||
interface = "0.0.0.0"
|
||||
|
9
mod/apps-akka/entrypoint.sh
Executable file
9
mod/apps-akka/entrypoint.sh
Executable file
@ -0,0 +1,9 @@
|
||||
#!/bin/sh -e
|
||||
|
||||
TARGET=/etc/bigbluebutton/bbb-apps-akka.conf
|
||||
cp /etc/bigbluebutton/bbb-apps-akka.conf.tmpl $TARGET
|
||||
sed -i "s/DOMAIN/$DOMAIN/" $TARGET
|
||||
sed -i "s/SHARED_SECRET/$SHARED_SECRET/" $TARGET
|
||||
|
||||
cd /bbb-apps-akka
|
||||
/bbb-apps-akka/bin/bbb-apps-akka
|
24
mod/base-java/Dockerfile
Normal file
24
mod/base-java/Dockerfile
Normal file
@ -0,0 +1,24 @@
|
||||
FROM openjdk:11-jre-slim-bullseye
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
wget unzip gosu locales \
|
||||
imagemagick xpdf-utils curl \
|
||||
&& 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 \
|
||||
&& mkdir /etc/bigbluebutton \
|
||||
&& chown bigbluebutton:bigbluebutton /etc/bigbluebutton
|
||||
|
||||
# add dockerize
|
||||
ENV DOCKERIZE_VERSION v0.6.1
|
||||
RUN wget -q 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
|
||||
|
||||
|
@ -1,33 +1,20 @@
|
||||
FROM mozilla/sbt:8u212_1.2.8 AS builder
|
||||
ARG BBB_BUILD_TAG
|
||||
FROM gitlab.senfcall.de:5050/senfcall-public/docker-bbb-build:$BBB_BUILD_TAG AS builder
|
||||
|
||||
RUN apt-get update && apt-get install -y subversion
|
||||
ARG TAG_COMMON_MESSAGE
|
||||
|
||||
# download bbb-common-message
|
||||
ENV TAG_COMMON_MESSAGE v2.4.5
|
||||
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
|
||||
&& cd /bbb-common-message \
|
||||
&& ./deploy.sh \
|
||||
&& rm -rf /bbb-common-message
|
||||
|
||||
# ===================================================
|
||||
|
||||
# install grails
|
||||
RUN cd /opt \
|
||||
&& wget -q 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 -q https://services.gradle.org/distributions/gradle-6.7-bin.zip \
|
||||
&& unzip gradle-6.7-bin
|
||||
ENV PATH="/opt/gradle-6.7/bin:${PATH}"
|
||||
ARG TAG_BBB_WEB
|
||||
|
||||
# download bbb-common-web
|
||||
ENV TAG_COMMON_WEB v2.4.5
|
||||
RUN svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG_COMMON_WEB/bbb-common-web /bbb-common-web \
|
||||
RUN svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG_BBB_WEB/bbb-common-web /bbb-common-web \
|
||||
&& rm -rf /bbb-common-message/.svn
|
||||
|
||||
# compile bbb-common-web
|
||||
@ -35,8 +22,7 @@ RUN cd /bbb-common-web \
|
||||
&& ./deploy.sh
|
||||
|
||||
# download bbb-web
|
||||
ENV TAG_WEB v2.4.5
|
||||
RUN svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG_WEB/bigbluebutton-web /bbb-web \
|
||||
RUN svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG_BBB_WEB/bigbluebutton-web /bbb-web \
|
||||
&& rm -rf /bbb-web/.svn
|
||||
|
||||
# compile bbb-web
|
||||
@ -50,28 +36,9 @@ RUN unzip -q /bbb-web/build/libs/bigbluebutton-0.10.0.war -d /dist
|
||||
|
||||
|
||||
# ===================================================
|
||||
FROM openjdk:8-jre-slim-bullseye
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
wget unzip gosu locales \
|
||||
imagemagick xpdf-utils curl
|
||||
|
||||
# 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 -q 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
|
||||
FROM bbb-docker-base-java
|
||||
|
||||
COPY --from=bbb-docker-base-java /usr/local/bin/dockerize /usr/local/bin/dockerize
|
||||
|
||||
# add blank presentation files and allow conversation to pdf/svg
|
||||
RUN mkdir -p /usr/share/bigbluebutton/blank \
|
||||
|
@ -47,8 +47,8 @@ RUN wget -q https://gitlab.senfcall.de/senfcall-public/mute-and-unmute-sounds/-/
|
||||
# git sparse-checkout is not yet available with buster and there
|
||||
# is no other sane way of downloading a single directory via git
|
||||
|
||||
ENV TAG v2.3.4
|
||||
RUN svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG/bbb-voice-conference/config/freeswitch/conf /etc/freeswitch \
|
||||
ARG TAG_FS_CONFIG
|
||||
RUN svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG_FS_CONFIG/bbb-voice-conference/config/freeswitch/conf /etc/freeswitch \
|
||||
&& rm -rf /etc/freeswitch/.svn
|
||||
|
||||
# the current available freeswitch-mod-opusfile is broken,
|
||||
|
@ -1,28 +1,23 @@
|
||||
FROM mozilla/sbt:8u212_1.2.8 AS builder
|
||||
ARG BBB_BUILD_TAG
|
||||
FROM gitlab.senfcall.de:5050/senfcall-public/docker-bbb-build:$BBB_BUILD_TAG AS builder
|
||||
|
||||
RUN apt-get update && apt-get install -y subversion
|
||||
ARG TAG_COMMON_MESSAGE
|
||||
|
||||
# download bbb-common-message
|
||||
ENV TAG_COMMON_MESSAGE v2.4.5
|
||||
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
|
||||
|
||||
&& cd /bbb-common-message \
|
||||
&& ./deploy.sh \
|
||||
&& rm -rf /bbb-common-message
|
||||
|
||||
# ===================================================
|
||||
ENV TAG_FSESL v2.4.5
|
||||
RUN svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG_FSESL/bbb-fsesl-client /bbb-fsesl-client \
|
||||
ARG TAG_FSESL_AKKA
|
||||
RUN svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG_FSESL_AKKA/bbb-fsesl-client /bbb-fsesl-client \
|
||||
&& rm -rf /bbb-fsesl-client/.svn
|
||||
|
||||
RUN cd /bbb-fsesl-client \
|
||||
&& ./deploy.sh
|
||||
|
||||
|
||||
ENV TAG v2.4.5
|
||||
RUN svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG/akka-bbb-fsesl /source \
|
||||
RUN svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG_FSESL_AKKA/akka-bbb-fsesl /source \
|
||||
&& rm -rf /source/.svn
|
||||
|
||||
# compile and unzip bin
|
||||
@ -32,25 +27,12 @@ RUN unzip /source/target/universal/bbb-fsesl-akka-0.0.2.zip -d /
|
||||
|
||||
# # ===================================================
|
||||
|
||||
FROM openjdk:8-jre-slim-bullseye
|
||||
|
||||
RUN apt update && apt-get install -y wget gosu
|
||||
|
||||
# install dockerize
|
||||
ENV DOCKERIZE_VERSION v0.6.1
|
||||
RUN wget -q 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
|
||||
|
||||
|
||||
RUN groupadd -g 1007 fsesl-akka \
|
||||
&& useradd -m -u 1007 -g fsesl-akka fsesl-akka
|
||||
FROM bbb-docker-base-java
|
||||
|
||||
COPY --from=builder /bbb-fsesl-akka-0.0.2 /bbb-fsesl-akka
|
||||
COPY bbb-fsesl-akka.conf /etc/bigbluebutton/bbb-fsesl-akka.conf.tmpl
|
||||
COPY logback.xml /bbb-fsesl-akka/conf/logback.xml
|
||||
COPY entrypoint.sh /entrypoint.sh
|
||||
|
||||
WORKDIR /bbb-fsesl-akka
|
||||
CMD dockerize \
|
||||
-template /etc/bigbluebutton/bbb-fsesl-akka.conf.tmpl:/etc/bigbluebutton/bbb-fsesl-akka.conf \
|
||||
gosu fsesl-akka /bbb-fsesl-akka/bin/bbb-fsesl-akka
|
||||
USER bigbluebutton
|
||||
ENTRYPOINT /entrypoint.sh
|
@ -5,7 +5,7 @@ include "/bbb-fsesl-akka/conf/application.conf"
|
||||
freeswitch {
|
||||
esl {
|
||||
host="10.7.7.1"
|
||||
password="{{ default .Env.FSESL_PASSWORD "ClueCon" }}"
|
||||
password="FSESL_PASSWORD"
|
||||
}
|
||||
}
|
||||
|
||||
|
9
mod/fsesl-akka/entrypoint.sh
Executable file
9
mod/fsesl-akka/entrypoint.sh
Executable file
@ -0,0 +1,9 @@
|
||||
#!/bin/sh -e
|
||||
|
||||
TARGET=/etc/bigbluebutton/bbb-fsesl-akka.conf
|
||||
|
||||
cp /etc/bigbluebutton/bbb-fsesl-akka.conf.tmpl $TARGET
|
||||
sed -i "s/FSESL_PASSWORD/$FSESL_PASSWORD/" $TARGET
|
||||
|
||||
cd /bbb-fsesl-akka
|
||||
/bbb-fsesl-akka/bin/bbb-fsesl-akka
|
@ -1,31 +1,24 @@
|
||||
FROM node:14.18.1-bullseye-slim AS builder
|
||||
ARG BBB_BUILD_TAG
|
||||
FROM gitlab.senfcall.de:5050/senfcall-public/docker-bbb-build:$BBB_BUILD_TAG AS builder
|
||||
|
||||
RUN apt-get update && apt-get install -y wget curl subversion python3 build-essential
|
||||
RUN groupadd -g 2000 meteor && useradd -m -u 2001 -g meteor meteor
|
||||
# RUN groupadd -g 2000 meteor && useradd -m -u 2001 -g meteor meteor
|
||||
# USER meteor
|
||||
|
||||
ARG TAG_HTML5
|
||||
RUN svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG_HTML5/bigbluebutton-html5 /source \
|
||||
&& cd /source \
|
||||
&& meteor npm ci --production \
|
||||
&& METEOR_DISABLE_OPTIMISTIC_CACHING=1 meteor build --architecture os.linux.x86_64 --allow-superuser --directory /app \
|
||||
&& rm -rf /source
|
||||
|
||||
# download dockerize
|
||||
ENV DOCKERIZE_VERSION v0.6.1
|
||||
RUN wget -q 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
|
||||
|
||||
USER meteor
|
||||
ENV METEOR_VERSION 2.5
|
||||
RUN curl -sL https://install.meteor.com?release=$METEOR_VERSION | sed s/--progress-bar/-sL/g | /bin/sh
|
||||
|
||||
ENV TAG v2.4.5
|
||||
RUN cd ~ \
|
||||
&& svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG/bigbluebutton-html5 \
|
||||
&& mv ~/bigbluebutton-html5 ~/source \
|
||||
&& cd ~/source \
|
||||
&& ~/.meteor/meteor npm ci --production \
|
||||
&& METEOR_DISABLE_OPTIMISTIC_CACHING=1 ~/.meteor/meteor build --architecture os.linux.x86_64 --directory ~/app \
|
||||
&& rm -rf ~/source
|
||||
|
||||
RUN cd ~/app/bundle/programs/server \
|
||||
RUN cd /app/bundle/programs/server \
|
||||
&& npm install --production
|
||||
|
||||
RUN sed -i "s/VERSION/$TAG_HTML5/" /app/bundle/programs/web.browser/head.html \
|
||||
&& find /app/bundle/programs/web.browser -name '*.js' -exec gzip -k -f -9 '{}' \; \
|
||||
&& find /app/bundle/programs/web.browser -name '*.css' -exec gzip -k -f -9 '{}' \; \
|
||||
&& find /app/bundle/programs/web.browser -name '*.wasm' -exec gzip -k -f -9 '{}' \;
|
||||
|
||||
# ------------------------------
|
||||
|
||||
FROM node:14.18.1-alpine
|
||||
@ -33,12 +26,9 @@ FROM node:14.18.1-alpine
|
||||
RUN addgroup -g 2000 meteor && \
|
||||
adduser -D -u 2001 -G meteor meteor && \
|
||||
apk add su-exec
|
||||
COPY --from=builder /usr/local/bin/dockerize /usr/local/bin/dockerize
|
||||
COPY --from=builder --chown=meteor:meteor /home/meteor/app/bundle /app
|
||||
COPY --from=bbb-docker-base-java /usr/local/bin/dockerize /usr/local/bin/dockerize
|
||||
COPY --from=builder --chown=meteor:meteor /app/bundle /app
|
||||
COPY entrypoint.sh /entrypoint.sh
|
||||
COPY bbb-html5.yml /app/bbb-html5.yml.tmpl
|
||||
|
||||
ENTRYPOINT ["/entrypoint.sh"]
|
||||
|
||||
# lets set the tag again, so that it is include in the image for later version retrieval
|
||||
ENV TAG v2.4.5
|
||||
|
@ -4,13 +4,11 @@ RUN apk add subversion git
|
||||
|
||||
# --------------------
|
||||
|
||||
ENV TAG_LEARNING_DASHBOARD v2.4.5
|
||||
ARG TAG_LEARNING_DASHBOARD
|
||||
RUN svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG_LEARNING_DASHBOARD/bbb-learning-dashboard /bbb-learning-dashboard && rm -r /bbb-learning-dashboard/.svn
|
||||
RUN cd /bbb-learning-dashboard && npm ci && npm run build
|
||||
|
||||
ENV TAG_PLAYBACK v3.3.0
|
||||
ENV REACT_APP_BBB_PLAYBACK_BUILD=$TAG_PLAYBACK
|
||||
RUN svn checkout https://github.com/bigbluebutton/bbb-playback/tags/$TAG_PLAYBACK /bbb-playback && rm -r /bbb-playback/.svn
|
||||
COPY ./bbb-playback /bbb-playback
|
||||
RUN cd /bbb-playback && npm ci && npm run build
|
||||
|
||||
# --------------------
|
||||
|
1
mod/nginx/bbb-playback
Submodule
1
mod/nginx/bbb-playback
Submodule
@ -0,0 +1 @@
|
||||
Subproject commit 008f04847dda5d23d772d20d718d042d54803335
|
@ -45,20 +45,20 @@ RUN mkdir -p \
|
||||
/usr/local/bigbluebutton/core \
|
||||
/etc/bigbluebutton
|
||||
|
||||
ENV TAG v2.4.4
|
||||
ARG TAG_RECORDINGS
|
||||
|
||||
# add bbb-record-core (lib, scripts and Gemfile)
|
||||
RUN cd /usr/local/bigbluebutton/core \
|
||||
&& svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG/record-and-playback/core/lib \
|
||||
&& svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG/record-and-playback/core/scripts \
|
||||
&& svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG_RECORDINGS/record-and-playback/core/lib \
|
||||
&& svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG_RECORDINGS/record-and-playback/core/scripts \
|
||||
&& rm -rf /usr/local/bigbluebutton/core/*/.svn \
|
||||
&& wget https://raw.githubusercontent.com/bigbluebutton/bigbluebutton/$TAG/record-and-playback/core/Gemfile.lock \
|
||||
&& wget https://raw.githubusercontent.com/bigbluebutton/bigbluebutton/$TAG/record-and-playback/core/Gemfile \
|
||||
&& wget https://raw.githubusercontent.com/bigbluebutton/bigbluebutton/$TAG/record-and-playback/core/Rakefile
|
||||
&& wget https://raw.githubusercontent.com/bigbluebutton/bigbluebutton/$TAG_RECORDINGS/record-and-playback/core/Gemfile.lock \
|
||||
&& wget https://raw.githubusercontent.com/bigbluebutton/bigbluebutton/$TAG_RECORDINGS/record-and-playback/core/Gemfile \
|
||||
&& wget https://raw.githubusercontent.com/bigbluebutton/bigbluebutton/$TAG_RECORDINGS/record-and-playback/core/Rakefile
|
||||
|
||||
# add bbb-playback-presentation scripts
|
||||
RUN cd /tmp \
|
||||
&& svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG/record-and-playback/presentation/scripts \
|
||||
&& svn checkout https://github.com/bigbluebutton/bigbluebutton/tags/$TAG_RECORDINGS/record-and-playback/presentation/scripts \
|
||||
&& rsync -av /tmp/scripts/ /usr/local/bigbluebutton/core/scripts/ \
|
||||
&& rm -rf /tmp/scripts
|
||||
|
||||
|
@ -1,36 +1,37 @@
|
||||
FROM node:14-bullseye-slim
|
||||
ARG BBB_BUILD_TAG
|
||||
FROM gitlab.senfcall.de:5050/senfcall-public/docker-bbb-build:$BBB_BUILD_TAG AS builder
|
||||
|
||||
|
||||
RUN apt-get update && apt-get -y install \
|
||||
git \
|
||||
make \
|
||||
python \
|
||||
python3-pip \
|
||||
g++ \
|
||||
ffmpeg
|
||||
|
||||
RUN useradd --uid 2004 --user-group webrtc-sfu
|
||||
|
||||
ADD ./bbb-webrtc-sfu app
|
||||
ADD ./bbb-webrtc-sfu /app
|
||||
|
||||
WORKDIR app
|
||||
|
||||
ENV NODE_ENV production
|
||||
|
||||
|
||||
# due to the git submodule npm install crashes with following error:
|
||||
# npm ERR! fatal: Not a git repository: ../.git/modules/bbb-webrtc-sfu
|
||||
# we simply delete the .git file
|
||||
RUN cp config/default.example.yml config/production.yml \
|
||||
&& chown -R webrtc-sfu:webrtc-sfu config \
|
||||
RUN cd /app \
|
||||
&& cp config/default.example.yml config/production.yml \
|
||||
&& rm .git \
|
||||
&& npm install --unsafe-perm \
|
||||
&& npm cache clear --force \
|
||||
&& rm -rf node_modules/mediasoup/worker/out/Release/subprojects \
|
||||
&& rm -rf node_modules/mediasoup/worker/out/Release/mediasoup-worker.p \
|
||||
&& rm -rf node_modules/mediasoup/worker/out/Release/deps
|
||||
|
||||
|
||||
# =============================
|
||||
FROM node:14.18.1-bullseye-slim
|
||||
RUN useradd --uid 2004 --user-group webrtc-sfu
|
||||
ENV NODE_ENV production
|
||||
|
||||
COPY --from=builder /app /app
|
||||
RUN chown -R webrtc-sfu:webrtc-sfu /app/config
|
||||
|
||||
COPY docker-entrypoint.sh /app/docker-entrypoint.sh
|
||||
|
||||
USER webrtc-sfu
|
||||
ENTRYPOINT [ "./docker-entrypoint.sh" ]
|
||||
ENTRYPOINT [ "/app/docker-entrypoint.sh" ]
|
||||
CMD [ "npm", "start" ]
|
||||
|
@ -1,5 +1,5 @@
|
||||
#!/bin/sh -e
|
||||
|
||||
cd /app
|
||||
sed -i "s|^\(localIpAddress\):.*|\1: \"10.7.7.10\"|g" config/production.yml
|
||||
export KURENTO_IP="10.7.7.1"
|
||||
|
||||
|
@ -33,9 +33,20 @@ if [ "$ENABLE_COTURN" == true ]; then
|
||||
fi
|
||||
fi
|
||||
|
||||
export $(cat tags.env | sed 's/#.*//g' | xargs)
|
||||
|
||||
docker run \
|
||||
--rm \
|
||||
-v $(pwd)/docker-compose.tmpl.yml:/docker-compose.tmpl.yml \
|
||||
-e BBB_BUILD_TAG=${BBB_BUILD_TAG} \
|
||||
-e TAG_COMMON_MESSAGE=${TAG_COMMON_MESSAGE} \
|
||||
-e TAG_APPS_AKKA=${TAG_APPS_AKKA} \
|
||||
-e TAG_FSESL_AKKA=${TAG_FSESL_AKKA} \
|
||||
-e TAG_BBB_WEB=${TAG_BBB_WEB} \
|
||||
-e TAG_HTML5=${TAG_HTML5} \
|
||||
-e TAG_FS_CONFIG=${TAG_FS_CONFIG} \
|
||||
-e TAG_LEARNING_DASHBOARD=${TAG_LEARNING_DASHBOARD} \
|
||||
-e TAG_RECORDINGS=${TAG_RECORDINGS} \
|
||||
-e DEV_MODE=${DEV_MODE:-false} \
|
||||
-e ENABLE_RECORDING=${ENABLE_RECORDING:-false} \
|
||||
-e REMOVE_OLD_RECORDING=${REMOVE_OLD_RECORDING:-false} \
|
||||
|
@ -1,73 +0,0 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
CORE_IMAGE=$(docker-compose images -q core)
|
||||
FREESWITCH_IMAGE=$(docker-compose images -q freeswitch)
|
||||
HTML5_IMAGE=$(docker-compose images -q html5)
|
||||
KURENTO_IMAGE=$(docker-compose images -q kurento)
|
||||
ETHERPAD_IMAGE=$(docker-compose images -q etherpad)
|
||||
MONGO_IMAGE=$(docker-compose images -q mongodb)
|
||||
REDIS_IMAGE=$(docker-compose images -q redis)
|
||||
|
||||
if [[ -z $CORE_IMAGE ]]
|
||||
then
|
||||
echo "this script only works if containers are created"
|
||||
echo "either start BigBlueButton with"
|
||||
echo " $ docker-compose up -d"
|
||||
echo "or at least create the containers with"
|
||||
echo " $ docker-compose create"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
|
||||
echo "bigbluebutton-docker"
|
||||
echo " commit: $(git rev-parse --short HEAD) ($(git log -1 --pretty=%B | head -n 1))"
|
||||
echo " branch: $(git rev-parse --abbrev-ref HEAD)"
|
||||
echo ""
|
||||
|
||||
echo "core"
|
||||
docker run --rm --entrypoint /bin/sh $CORE_IMAGE -c "dpkg -l 'bbb-*' | grep ii | cut -c 5-42 | sed 's/bbb-/ bbb-/g'"
|
||||
echo ""
|
||||
|
||||
echo "etherpad"
|
||||
ETHERPAD_VERSION=$(docker run --rm --entrypoint cat $ETHERPAD_IMAGE /opt/etherpad-lite/src/package.json | grep version | awk -F'"' '{print $4}')
|
||||
echo " version: $ETHERPAD_VERSION"
|
||||
echo ""
|
||||
|
||||
echo "freeswitch"
|
||||
FREESWITCH_VERSION=$(docker run --rm --entrypoint freeswitch $FREESWITCH_IMAGE -version | cut -c 21-)
|
||||
FREESWTICH_CONFIG_VERSION=$(docker image inspect $FREESWITCH_IMAGE | grep GIT_TAG= | head -n 1 | xargs | cut -c 9-)
|
||||
echo " build: $FREESWITCH_VERSION"
|
||||
echo " config: $FREESWTICH_CONFIG_VERSION"
|
||||
echo ""
|
||||
|
||||
echo "html5"
|
||||
HTML5_VERSION=$(docker image inspect $HTML5_IMAGE | grep TAG= | head -n 1 | xargs | cut -c 5-)
|
||||
echo " version: $HTML5_VERSION"
|
||||
echo ""
|
||||
|
||||
echo "kurento"
|
||||
KURENTO_VERSION=$(docker run --rm --entrypoint kurento-media-server $KURENTO_IMAGE --version | grep Kurento | sed 's/Kurento Media Server version: //')
|
||||
echo " version: $KURENTO_VERSION"
|
||||
echo ""
|
||||
|
||||
echo "mongodb"
|
||||
MONGO_VERSION=$(docker image inspect $MONGO_IMAGE | grep MONGO_VERSION | head -n 1 | xargs | cut -c 15-)
|
||||
echo " version: $MONGO_VERSION"
|
||||
echo ""
|
||||
|
||||
# TODO:
|
||||
# - nginx
|
||||
# - periodic
|
||||
|
||||
echo "redis"
|
||||
REDIS_VERSION=$(docker image inspect $REDIS_IMAGE | grep REDIS_VERSION | head -n 1 | xargs | cut -c 15-)
|
||||
echo " version: $REDIS_VERSION"
|
||||
echo ""
|
||||
|
||||
echo "webrtc-sfu"
|
||||
SFU_VERSION=$(cd bbb-webrtc-sfu && cat package.json | grep version | awk -F\" '{print $4}')
|
||||
SFU_COMMIT=$(cd bbb-webrtc-sfu && git rev-parse --short HEAD)
|
||||
echo " version: $SFU_VERSION"
|
||||
echo " commit: $SFU_COMMIT"
|
@ -198,6 +198,9 @@ sed -i "s/POSTGRESQL_SECRET=.*/POSTGRESQL_SECRET=$RANDOM_5/" .env
|
||||
|
||||
./scripts/generate-compose
|
||||
|
||||
echo "building bbb-docker-base-java"
|
||||
docker build -t bbb-docker-base-java mod/base-java
|
||||
|
||||
echo "--------------------------------------------------"
|
||||
echo "configuration file .env got successfully created!"
|
||||
echo ""
|
||||
|
@ -30,6 +30,7 @@ else
|
||||
|
||||
echo ""
|
||||
echo "# rebuild images"
|
||||
docker build -t bbb-docker-base-java mod/base-java
|
||||
|
||||
# rebuild everything which got modified
|
||||
docker-compose build --pull
|
||||
|
21
tags.env
Normal file
21
tags.env
Normal file
@ -0,0 +1,21 @@
|
||||
# after changing a tag always run following commands to apply
|
||||
# - ./scripts/generate-compose
|
||||
# - docker-compose build
|
||||
|
||||
|
||||
# https://gitlab.senfcall.de/senfcall-public/docker-bbb-build
|
||||
BBB_BUILD_TAG=v2022-03-30
|
||||
|
||||
# https://github.com/bigbluebutton/bigbluebutton
|
||||
TAG_COMMON_MESSAGE=v2.5.0-alpha.6
|
||||
TAG_APPS_AKKA=v2.5.0-alpha.6
|
||||
TAG_FSESL_AKKA=v2.5.0-alpha.6
|
||||
TAG_BBB_WEB=v2.5.0-alpha.6
|
||||
TAG_HTML5=v2.5.0-alpha.6
|
||||
TAG_RECORDINGS=v2.5.0-alpha.6
|
||||
|
||||
TAG_LEARNING_DASHBOARD=v2.5.0-alpha.6
|
||||
TAG_FS_CONFIG=v2.5.0-alpha.6
|
||||
|
||||
|
||||
IMAGE_NODE=node:14.18.1-bullseye-slim
|
Loading…
Reference in New Issue
Block a user