Merge pull request #2886 from nextcloud/janus-0.x

build janus 0.x
This commit is contained in:
Simon L 2023-07-20 15:49:19 +02:00 committed by GitHub
commit 2399728731
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 64 additions and 27 deletions

View file

@ -34,6 +34,16 @@ jobs:
)" )"
curl -L "https://raw.githubusercontent.com/strukturag/nextcloud-spreed-signaling/$signaling_version/server.conf.in" -o Containers/talk/server.conf.in curl -L "https://raw.githubusercontent.com/strukturag/nextcloud-spreed-signaling/$signaling_version/server.conf.in" -o Containers/talk/server.conf.in
# Janus
janus_version="$(
git ls-remote https://github.com/meetecho/janus-gateway v0.*.* \
| cut -d/ -f3 \
| sort -V \
| grep -E "^v[0-9]+\.[0-9]+\.[0-9]+$" \
| tail -1
)"
sed -i "s|^ARG JANUS_VERSION=.*$|ARG JANUS_VERSION=$janus_version|" ./Containers/talk/Dockerfile
- name: Create Pull Request - name: Create Pull Request
uses: peter-evans/create-pull-request@v5 uses: peter-evans/create-pull-request@v5
with: with:

View file

@ -1,41 +1,63 @@
FROM nats:2.9.19-scratch as nats FROM nats:2.9.19-scratch as nats
FROM strukturag/nextcloud-spreed-signaling:1.1.3 as signaling FROM strukturag/nextcloud-spreed-signaling:1.1.3 as signaling
FROM alpine:3.18.2 as janus
ARG JANUS_VERSION=v0.13.4
WORKDIR /src
RUN set -ex; \
apk add --no-cache \
ca-certificates \
git \
autoconf \
automake \
build-base \
pkgconfig \
libtool \
util-linux \
glib-dev \
zlib-dev \
openssl-dev \
jansson-dev \
libnice-dev \
libconfig-dev \
libsrtp-dev \
gengetopt-dev \
libwebsockets-dev; \
git clone --recursive https://github.com/meetecho/janus-gateway --depth=1 --single-branch --branch "$JANUS_VERSION" /src; \
/src/autogen.sh; \
/src/configure; \
make; \
make install; \
make configs; \
rename -v ".jcfg.sample" ".jcfg" /usr/local/etc/janus/*.jcfg.sample
FROM coturn/coturn:4.6.2-alpine3.18 FROM coturn/coturn:4.6.2-alpine3.18
USER root USER root
COPY --from=nats /nats-server /usr/local/bin/nats-server
COPY --from=signaling /usr/bin/nextcloud-spreed-signaling /usr/local/bin/nextcloud-spreed-signaling
COPY --chmod=775 start.sh /start.sh
COPY --chmod=664 supervisord.conf /supervisord.conf
RUN set -ex; \ RUN set -ex; \
apk add --no-cache \ apk add --no-cache \
ca-certificates \ ca-certificates \
tzdata \ tzdata \
bash \ bash \
janus-gateway \
openssl \ openssl \
supervisor \ supervisor \
bind-tools \ bind-tools \
netcat-openbsd \ netcat-openbsd \
shadow \ \
util-linux \ glib \
build-base \ zlib \
wget \ libssl3 \
lua5.3-dev \ libcrypto3 \
luarocks5.3; \ jansson \
libnice \
libconfig \
libsrtp \
libwebsockets \
\
shadow; \
useradd --system talk; \ useradd --system talk; \
luarocks-5.3 install luajson; \
luarocks-5.3 install ansicolors; \
rename -v ".jcfg.sample" ".jcfg" /etc/janus/*.sample; \
apk del --no-cache \ apk del --no-cache \
shadow \ shadow; \
util-linux \
build-base \
wget \
lua5.3-dev \
luarocks5.3; \
\ \
# Give root a random password # Give root a random password
echo "root:$(openssl rand -base64 12)" | chpasswd; \ echo "root:$(openssl rand -base64 12)" | chpasswd; \
@ -48,11 +70,10 @@ RUN set -ex; \
/conf \ /conf \
/var/lib/turn \ /var/lib/turn \
/var/log/supervisord \ /var/log/supervisord \
/var/lib/turn \ /var/run/supervisord \
/var/run/supervisord; \ /usr/local/lib/janus/loggers; \
chown talk:talk -R \ chown talk:talk -R \
/usr \ /usr \
/etc/janus \
/etc/nats.conf \ /etc/nats.conf \
/var/lib/turn \ /var/lib/turn \
/var/log/supervisord \ /var/log/supervisord \
@ -64,6 +85,13 @@ RUN set -ex; \
/var/lib/turn \ /var/lib/turn \
/var/log/supervisord; /var/log/supervisord;
COPY --from=janus /usr/local /usr/local
COPY --from=nats /nats-server /usr/local/bin/nats-server
COPY --from=signaling /usr/bin/nextcloud-spreed-signaling /usr/local/bin/nextcloud-spreed-signaling
COPY --chmod=775 start.sh /start.sh
COPY --chmod=664 supervisord.conf /supervisord.conf
# Set default talk port https://github.com/nextcloud/all-in-one/issues/1011 # Set default talk port https://github.com/nextcloud/all-in-one/issues/1011
ENV TALK_PORT=3478 ENV TALK_PORT=3478

View file

@ -1,6 +1,5 @@
[supervisord] [supervisord]
nodaemon=true nodaemon=true
nodaemon=true
logfile=/var/log/supervisord/supervisord.log logfile=/var/log/supervisord/supervisord.log
pidfile=/var/run/supervisord/supervisord.pid pidfile=/var/run/supervisord/supervisord.pid
childlogdir=/var/log/supervisord/ childlogdir=/var/log/supervisord/
@ -28,7 +27,7 @@ stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0 stderr_logfile_maxbytes=0
# debug-level 3 means warning # debug-level 3 means warning
command=janus --config=/etc/janus/janus.jcfg --disable-colors --log-stdout --full-trickle --debug-level 3 command=janus --config=/usr/local/etc/janus/janus.jcfg --disable-colors --log-stdout --full-trickle --debug-level 3
[program:signaling] [program:signaling]
stdout_logfile=/dev/stdout stdout_logfile=/dev/stdout