Sign inSign up

traceflight/mopidy

By traceflight

Updated about 6 years ago

Containerized Mopidy MPD (Music Player Daemon)

Image
0

336

traceflight/mopidy repository overview

What is Mopidy?

Mopidy is a music server with support for MPD clients and Web clients.

Features of this image

You may install additional backend extensions.

Usage

Setup pulseaudio on host machine

Since I run mopidy on my home server. No multi-user feature is used. So I run pulseaudio as system-wide daemon.

Install pulseaudio

On Centos:

sudo yum install pulseaudio
Setup pulseaudio

Add following settings to /etc/pulse/system.pa to enable tcp service. So palseaudio client in docker can connect to the daemon over the network.

.ifexists module-esound-protocol-tcp.so
load-module module-esound-protocol-tcp auth-anonymous=1
.endif
load-module module-native-protocol-tcp auth-anonymous=1

Group settings.

usermod -a -G audio pulse
usermod -a -G bluetooth pulse
usermod -a -G pulse-access root 
Start pulseaudio
/usr/bin/pulseaudio --daemonize=no --realtime --system --disallow-exit
Run mopidy in docker
$ docker run -d \
    -v "$PWD/media:/var/lib/mopidy/media" \
    -v "$PWD/playlists:/var/lib/mopidy/playlists" \
    -v "$PWD/local:/var/lib/mopidy/local" \
    -v "$PWD/etc/mopidy.conf:/config/mopidy.conf" \
    -v "$PWD/etc/upmpdcli.conf:/etc/upmpdcli.conf" \
    -e "PULSE_SERVER=127.0.0.1" \
    --net host \
    --user root \
    traceflight/mopidy

Most arguments are optional (see some examples below):

  • Docker arguments:
    • -v ...:/var/lib/mopidy/media - (optional) Path to directory with local media files.
    • -v ...:/var/lib/mopidy/local - (optional) Path to directory to store local metadata such as libraries and playlists in.
    • -v ...:/var/lib/mopidy/playlists - (optional) Path to directory to store local playlists.
    • -v ...:/config/mopidy.conf - (optional) Path to mopidy configuration.
    • -v ...:/upmpdcli.conf - (optional) Path to upmpdcli configuration.
    • -e "PULSE_SERVER=127.0.0.1" - (required) Setting of pulse server.
    • --user root - (required).
    • --net host - (required).
Test

Run this comman in docker:

gst-launch-1.0 audiotestsrc ! autoaudiosink

Make sure you can hear sound.

Tag summary

Content type

Image

Digest

Size

365.1 MB

Last updated

about 6 years ago

docker pull traceflight/mopidy