VITIMan / docker-music-stack

A fully working music stack built over Docker. Icecast + MPD + sima + ympd
80 stars 27 forks source link

Docker Music Stack

This a ready, set and deploy music stack built under docker.

Applications used in the stack

MPD + Icecast would be the essential configuration to be prepared to listen music. The other apps are cool add-ons for a beautiful stack

Execution

You have two options to execute all the stack, using docker-compose or launching the containers one-by-one, your choice.

The default access to applications are:

Docker Compose

Clone this repo. Edit docker-compose.yml and add your host volumes for your music, playlists and/or database, then:

docker-compose up -d

Container by container, separatelly

  1. Create a bridge network

    docker network create -d bridge music_stack

  2. Run Icecast

    docker run -p 8000:8000 --net music_stack --name=icecast -d vitiman/alpine-icecast:latest

  3. Run MPD

Use host volumes or create your own volumes for your music, playlists and/or database

docker run -d -p 6600:6600 --net music_stack \ 
    -v your_music_volume:/var/lib/mpd/music \
    -v your_playlists_volume:/var/lib/mpd/playlists \
    -v your_database_volume:/var/lib/mpd/database \
    --name mpd vitiman/alpine-mpd:latest
  1. (Optional) Run sima

    docker run --net music_stack --name=sima -d vitiman/alpine-sima:latest

  2. (Optional) Run ympd

    docker run -p 8080:8080 --net music_stack --name=ympd -d vitiman/alpine-ympd:latest

Passwords, users and credentials

It's strongly recommended to change passwords in icecast.xml and mpd.conf.

The passwords in configuration are setted for development purposes.

Configurations

Custom build

When you set up your current passwords, you need only to build using docker-compose with the other YAML file docker-compose.yml.custom. Don't forget to set your volumes!

docker-compose -f docker-compose.yml.custom build
docker-compose -f docker-compose.yml.custom up -d

DockerHub repository

TODOs