Dockerfile and more for MPD
Find a file
2024-03-31 14:02:02 -07:00
.woodpecker less juice 2024-03-10 13:53:47 -07:00
music add envsubst to set mpd password from env 2024-03-09 17:16:38 -08:00
.env add envsubst to set mpd password from env 2024-03-09 17:16:38 -08:00
docker-compose.yaml add envsubst to set mpd password from env 2024-03-09 17:16:38 -08:00
Dockerfile.debian add envsubst to set mpd password from env 2024-03-09 17:16:38 -08:00
entrypoint.sh add envsubst to set mpd password from env 2024-03-09 17:16:38 -08:00
LICENSE add license 2024-03-31 14:02:02 -07:00
readme.md add envsubst to set mpd password from env 2024-03-09 17:16:38 -08:00
renovate.json renovate: update mpd version in ci and dockerfile together 2024-03-05 19:12:57 -08:00
shout.conf add envsubst to set mpd password from env 2024-03-09 17:16:38 -08:00
tunes.m3u add readme, docker-compose, other nonsense 2024-03-05 16:49:34 -08:00

MPD in a container???

This is a Dockerfile for running MPD in a containerized environment.

running

docker run \
  -v ./shout.conf:/mpd/shout.conf \
  grumble/mpd:v0.23.15 /mpd/shout.conf

Also included is a Docker Compose configuration that demonstrates how MPD can be used to stream to an Icecast server:

docker compose up --build --detach
docker compose exec mpd mpc update --wait
docker compose exec mpd mpc load tunes
docker compose exec mpd mpc repeat on
docker compose exec mpd mpc play

At this point you should be able to access your horrible new radio station at http://localhost:8000/mpd.m3u.

configuration

MPD does not allow configuration via environment variables. We circumvent this by running envsubst at startup, which rewrites the MPD configuration with the values of provided environment variables (currently only for ICECAST_SOURCE_PASSWORD).