version: '2.4' services: mpd: #build: # context: ./ # dockerfile: alpine.Dockerfile image: tobi312/rpi-mpd:alpine container_name: mpd restart: unless-stopped ports: - 6600:6600/tcp # MPD Client - 8000:8000/tcp # Stream ## PipeWire support #environment: #- XDG_RUNTIME_DIR=/tmp volumes: - ./Music:/var/lib/mpd/music:ro - ./playlists:/var/lib/mpd/playlists:rw - ./data:/var/lib/mpd/data:rw - ./config/mpd.conf:/etc/mpd.conf:rw # Time: - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ## PipeWire support by mounting the host socket #- /run/user/1000/pipewire-0:/tmp/pipewire-0 #devices: # - "/dev/snd:/dev/snd" #cap_add: # - SYS_NICE healthcheck: test: ["CMD-SHELL", "nc -nzv -w 3 127.0.0.1 6600 || exit 1"] interval: 60s timeout: 5s retries: 3 # https://github.com/jcorporation/myMPD mympd: image: ghcr.io/jcorporation/mympd/mympd:latest container_name: mympd restart: unless-stopped ports: - 8080:80/tcp - 8443:443/tcp environment: - TZ=Europe/Berlin - UMASK_SET=022 #optional # Notice: After the first start all environment variables are ignored, except loglevel. - MPD_HOST=mpd - MPD_PORT=6600 #- MPD_TIMEOUT=30 #- MYMPD_ACL=+0.0.0.0/0 #- MYMPD_COVERCACHE_KEEP_DAYS=31 #- MYMPD_HTTP_HOST=0.0.0.0 #- MYMPD_HTTP_PORT=80 #- MYMPD_LOGLEVEL=5 #- MYMPD_LUALIBS=all #- MYMPD_SCRIPTACL=+127.0.0.1 - MYMPD_SSL=false #- MYMPD_SSL_PORT=443 #- MYMPD_SSL_SAN=mpd.example.com #- MYMPD_CUSTOM_CERT=false #- MYMPD_SSL_CERT=/var/lib/mympd/ssl/server.crt #- MYMPD_SSL_KEY=/var/lib/mympd/ssl/server.key volumes: - ./Music/:/music/:ro - ./playlists/:/playlists/:ro - ./mympd/:/var/lib/mympd/:rw healthcheck: test: ["CMD-SHELL", "nc -nzv -w 3 127.0.0.1 80 || exit 1"] interval: 60s timeout: 5s retries: 3