Mumble Web Interface

master
Siroco 10 months ago
commit 74e16bc13f
Signed by: siroco
GPG Key ID: 1324098302A514B0
  1. 33
      Dockerfile
  2. 48
      config.local.js
  3. 19
      docker-compose.yml

@ -0,0 +1,33 @@
FROM registry.sindominio.net/debian as builder
RUN apt update -y && \
apt install -y git nodejs npm
RUN git clone https://github.com/Johni0702/mumble-web /home/node
COPY ./config.local.js /home/node/app/config.local.js
RUN mkdir -p /home/node/.npm-global && \
mkdir -p /home/node/app
ENV PATH=/home/node/.npm-global/bin:$PATH
ENV NPM_CONFIG_PREFIX=/home/node/.npm-global
RUN cd /home/node && \
npm install && \
npx browserslist@latest --update-db && \
npm run build
FROM registry.sindominio.net/debian
RUN apt update -y && \
apt install -y tini websockify
COPY --from=builder /home/node/dist ./mumble
COPY ./config.local.js ./mumble/app/config.local.js
EXPOSE 8080
ENV MUMBLE_SERVER=mumble:64738
ENTRYPOINT ["/usr/bin/tini", "--"]
CMD websockify --ssl-target 8080 --web=/mumble "$MUMBLE_SERVER"

@ -0,0 +1,48 @@
// You can overwrite the default configuration values set in [config.js] here.
// There should never be any required changes to this file and you can always
// simply copy it over when updating to a new version.
let config = window.mumbleWebConfig // eslint-disable-line no-unused-vars
// E.g. changing default address and theme:
//config.defaults.address = 'charlar.sindominio.net/mumble'
//config.defaults.theme = 'MetroMumbleDark'
window.mumbleWebConfig = {
// Which fields to show on the Connect to Server dialog
'connectDialog': {
'address': false,
'port': false,
'token': false,
'username': true,
'password': false,
'channelName': false
},
// Default values for user settings
// You can see your current value by typing `localStorage.getItem('mumble.$setting')` in the web console.
'settings': {
'voiceMode': 'ptt', // one of 'cont' (Continuous), 'ptt' (Push-to-Talk), 'vad' (Voice Activity Detection)
'pttKey': 'ctrl + shift',
'vadLevel': 0.3,
'toolbarVertical': false,
'showAvatars': 'always', // one of 'always', 'own_channel', 'linked_channel', 'minimal_only', 'never'
'userCountInChannelName': false,
'audioBitrate': 40000, // bits per second
'samplesPerPacket': 960
},
// Default values (can be changed by passing a query parameter of the same name)
'defaults': {
// Connect Dialog
'address': window.location.hostname,
'port': '443/mumble/?webrtc=false', // try disable webrtc
'webrtc':false, // is not working...
'token': '',
'username': '',
'password': '',
'joinDialog': false, // replace whole dialog with single "Join Conference" button
'matrix': false, // enable Matrix Widget support (mostly auto-detected; implies 'joinDialog')
'avatarurl': '', // download and set the user's Mumble avatar to the image at this URL
// General
'theme': 'MetroMumbleDark'
}
}

@ -0,0 +1,19 @@
version: '3'
services:
mumble-web:
image: registry.sindominio.net/mumble-web
build: "."
container_name: mumble-web
restart: always
ports:
- "8484:8080/tcp"
- "8484:8080/udp"
# link to mumble server
#links:
# - mumble_server:mumble
#depends_on:
# - mumble_server
volumes:
mumble-data:
Loading…
Cancel
Save