Skip to content

Instantly share code, notes, and snippets.

@giuseppe998e
Last active September 26, 2021 23:16
Show Gist options
  • Select an option

  • Save giuseppe998e/c16be616d7dbb7fc2765f57d22eb1f11 to your computer and use it in GitHub Desktop.

Select an option

Save giuseppe998e/c16be616d7dbb7fc2765f57d22eb1f11 to your computer and use it in GitHub Desktop.
Docker Alpine MurMur (Mumble Server) with persistence | Works on RPI (3B tested)

Docker Alpine MurMur (Mumble Server) with persistence | Works on RPI (3B tested)

How to use

  1. Download Dockerfile and put it in an empty directory
  2. In the directory mentioned above, build a new docker image: docker build -t giuseppe998e/murmur .
  3. Create a persistent volume: docker volume create --name murmur-data
  4. Create (and start) your docker container: docker run -d -p 64738:64738 -p 64738:64738/udp -v murmur-data:/data --restart unless-stopped --name murmur giuseppe998e/murmur
  5. Retrieve the administrator user's password: docker logs murmur 2>&1 | grep "Password for 'SuperUser'" (you may have to wait a while as the server needs to initialize)

How to edit config.ini

  1. Edit config file: docker exec -it murmur vi /data/config.ini
  2. Restart docker container: docker restart murmur
FROM alpine
LABEL maintainer="Giuseppe Eletto <peppe.eletto@gmail.com>"
# Setup environment
RUN adduser -DHs /sbin/nologin murmur \
&& apk update \
&& apk upgrade \
&& apk add murmur \
&& rm -rf /var/cache/apk/*
# Add data dir
RUN mkdir /data \
&& chown murmur:murmur /data
# Copy config to data dir
RUN (false | cp -i /etc/murmur.ini /data/config.ini) \
&& sed -i "s/database=.*/database=\/data\/murmur.sqlite/" /data/config.ini \
&& sed -i "s/logfile=.*/logfile=\/data\/murmur.log/" /data/config.ini \
&& chown murmur:murmur /data/config.ini
# Set data dir as persistent volume
VOLUME /data
# Set user
USER murmur
# Expose server port TCP/UDP
EXPOSE 64738/tcp 64738/udp
# Start server
ENTRYPOINT [ "/usr/bin/murmurd", "-ini", "/data/config.ini", "-v", "-fg" ]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment