docker-janus-gateway/Dockerfile
renovate-bot 72a4c1a888 Update dependency meetecho/janus-gateway to v1.2.1 ()
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [meetecho/janus-gateway](https://github.com/meetecho/janus-gateway) | minor | `v1.1.4` -> `v1.2.1` |

---

### Release Notes

<details>
<summary>meetecho/janus-gateway (meetecho/janus-gateway)</summary>

### [`v1.2.1`](https://github.com/meetecho/janus-gateway/blob/HEAD/CHANGELOG.md#v121---2023-12-06)

[Compare Source](https://github.com/meetecho/janus-gateway/compare/v1.2.0...v1.2.1)

-   Added support for abs-capture-time RTP extension \[[PR-3161](https://github.com/meetecho/janus-gateway/pull/3161)]
-   Fixed truncated label in datachannels (thanks [@&#8203;veeting](https://github.com/veeting)!) \[[PR-3265](https://github.com/meetecho/janus-gateway/pull/3265)]
-   Support larger values for SDP attributes (thanks [@&#8203;petarminchev](https://github.com/petarminchev)!) \[[PR-3282](https://github.com/meetecho/janus-gateway/pull/3282)]
-   Fixed rare crash in VideoRoom plugin (thanks [@&#8203;tmatth](https://github.com/tmatth)!) \[[PR-3259](https://github.com/meetecho/janus-gateway/pull/3259)]
-   Don't create VideoRoom subscriptions to publisher streams with no associated codecs
-   Added suspend/resume participant API to AudioBridge \[[PR-3301](https://github.com/meetecho/janus-gateway/pull/3301)]
-   Fixed rare crash in AudioBridge
-   Fixed rare crash in Streaming plugin when doing ICE restarts \[[Issue-3288](https://github.com/meetecho/janus-gateway/issues/3288)]
-   Allow SIP and NoSIP plugins to bind media to a specific address (thanks [@&#8203;pawnnail](https://github.com/pawnnail)!) \[[PR-3263](https://github.com/meetecho/janus-gateway/pull/3263)]
-   Removed advertised support for SIP UPDATE in SIP plugin
-   Parse RFC2833 DTMF to custom events in SIP plugin (thanks [@&#8203;ywmoyue](https://github.com/ywmoyue)!) \[[PR-3280](https://github.com/meetecho/janus-gateway/pull/3280)]
-   Fixed missing Contact header in some dialogs in SIP plugin (thanks [@&#8203;ycherniavskyi](https://github.com/ycherniavskyi)!) \[[PR-3286](https://github.com/meetecho/janus-gateway/pull/3286)]
-   Properly set mid when notifying about ended tracks in janus.js
-   Fixed broken restamping in janus-pp-rec
-   Other smaller fixes and improvements (thanks to all who contributed pull requests and reported issues!)

### [`v1.2.0`](https://github.com/meetecho/janus-gateway/blob/HEAD/CHANGELOG.md#v120---2023-08-09)

[Compare Source](https://github.com/meetecho/janus-gateway/compare/v1.1.4...v1.2.0)

-   Added support for VP9/AV1 simulcast, and fixed broken AV1/SVC support \[[PR-3218](https://github.com/meetecho/janus-gateway/pull/3218)]
-   Fixed RTCP out quality stats \[[PR-3228](https://github.com/meetecho/janus-gateway/pull/3228)]
-   Default link quality stats to 100
-   Added support for ICE consent freshness \[[PR-3234](https://github.com/meetecho/janus-gateway/pull/3234)]
-   Fixed rare race condition in VideoRoom \[[PR-3219](https://github.com/meetecho/janus-gateway/pull/3219)] \[[PR-3247](https://github.com/meetecho/janus-gateway/pull/3247)]
-   Use speexdsp's jitter buffer in the AudioBridge \[[PR-3233](https://github.com/meetecho/janus-gateway/pull/3233)]
-   Fixed crash in Streaming plugin on mountpoints with too many streams \[[Issue-3225](https://github.com/meetecho/janus-gateway/issues/3225)]
-   Support for batched configure requests in Streaming plugin (thanks [@&#8203;petarminchev](https://github.com/petarminchev)!) \[[PR-3239](https://github.com/meetecho/janus-gateway/pull/3239)]
-   Fixed rare deadlock in Streamin plugin \[[PR-3250](https://github.com/meetecho/janus-gateway/pull/3250)]
-   Fix simulated leave message for longer string ID rooms in TextRoom (thanks [@&#8203;adnanel](https://github.com/adnanel)!) [PR-3243](https://github.com/meetecho/janus-gateway/pull/3243)]
-   Notify about count of sessions, handles and PeerConnections on a regular basis, when event handlers are enabled \[[PR-3221](https://github.com/meetecho/janus-gateway/pull/3221)]
-   Fixed broken Insertable Streams for recvonly streams when answering in janus.js
-   Added background selector and blur support to Virtual Background demo
-   Other smaller fixes and improvements (thanks to all who contributed pull requests and reported issues!)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi4zNC4wIiwidXBkYXRlZEluVmVyIjoiMzcuODEuNCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciJ9-->

Reviewed-on: 
Co-authored-by: renovate-bot <bot@walbeck.it>
Co-committed-by: renovate-bot <bot@walbeck.it>
2023-12-08 14:19:24 +00:00

125 lines
3.7 KiB
Docker

FROM debian:bullseye-slim@sha256:5aab272aa24713622bfac9dba239bc7488d9979b0d82d19a9dffccd99292154d
# renovate: datasource=github-tags depName=meetecho/janus-gateway versioning=semver
ENV JANUS_VERSION v1.2.1
# renovate: datasource=github-tags depName=cisco/libsrtp versioning=semver
ENV LIBSRTP_VERSION v2.5.0
# renovate: datasource=git-tags depName=https://gitlab.freedesktop.org/libnice/libnice versioning=semver
ENV LIBNICE_VERSION 0.1.21
# renovate: datasource=git-tags depName=https://libwebsockets.org/repo/libwebsockets versioning=semver
ENV LIBWEBSOCKETS_VERSION v4.3.3
ENV USRSCTP_VERSION master
RUN set -ex; \
\
groupadd --system --gid 602 janus; \
useradd --no-log-init --system --gid janus --no-create-home --uid 602 janus; \
\
apt-get update; \
apt-get install -y --no-install-recommends \
# Runtime dependencies
ca-certificates \
libconfig9 \
libglib2.0-0 \
libjansson4 \
libssl1.1 \
libcurl4 \
libopus0 \
libogg0 \
libmicrohttpd12 \
# Build dependencies
libmicrohttpd-dev \
libjansson-dev \
libssl-dev \
libglib2.0-dev \
libopus-dev \
libogg-dev \
libcurl4-openssl-dev \
liblua5.3-dev \
libconfig-dev \
pkg-config \
gengetopt \
libtool \
automake \
git \
make \
gtk-doc-tools \
ninja-build \
python3-pip \
cmake \
build-essential \
; \
pip3 install meson; \
mkdir /build; \
git clone --branch $JANUS_VERSION https://github.com/meetecho/janus-gateway.git /build/janus-gateway; \
git clone --branch $LIBSRTP_VERSION https://github.com/cisco/libsrtp.git /build/libsrtp; \
git clone --branch $LIBNICE_VERSION https://gitlab.freedesktop.org/libnice/libnice.git /build/libnice; \
git clone --branch $USRSCTP_VERSION https://github.com/sctplab/usrsctp /build/usrsctp; \
git clone --branch $LIBWEBSOCKETS_VERSION https://libwebsockets.org/repo/libwebsockets /build/libwebsockets; \
\
cd /build/libnice; \
meson --prefix=/usr build; \
ninja -C build; \
ninja -C build install; \
\
cd /build/libsrtp; \
./configure --prefix=/usr --enable-openssl; \
make shared_library && make install; \
\
cd /build/usrsctp; \
./bootstrap; \
./configure --prefix=/usr --disable-programs --disable-inet --disable-inet6; \
make; \
make install; \
\
cd /build/libwebsockets; \
mkdir build; \
cd build; \
cmake -DLWS_MAX_SMP=1 -DLWS_WITHOUT_EXTENSIONS=0 -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_C_FLAGS="-fpic" ..; \
make; \
make install; \
\
cd /build/janus-gateway; \
sh autogen.sh; \
./configure --prefix=/opt/janus --disable-plugin-voicemail --disable-plugin-nosip --disable-plugin-sip \
--disable-plugin-streaming --disable-plugin-recordplay --disable-unix-sockets; \
make; \
make install; \
make configs; \
cd /; \
rm -rf /build; \
chown -R janus:janus /opt/janus; \
\
pip3 uninstall -y meson; \
rm -rf /root/.cache/pip; \
\
apt-get purge -y --autoremove \
libmicrohttpd-dev \
libjansson-dev \
libssl-dev \
libglib2.0-dev \
libopus-dev \
libogg-dev \
libcurl4-openssl-dev \
liblua5.3-dev \
libconfig-dev \
pkg-config \
gengetopt \
libtool \
automake \
git \
make \
gtk-doc-tools \
ninja-build \
python3-pip \
cmake \
build-essential \
; \
rm -rf /var/lib/apt/lists/*;
EXPOSE 8088 8188
USER janus:janus
CMD ["/opt/janus/bin/janus"]