Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Tizonia on Docker container

Containerized Tizonia cloud music player that uses the host's sound system.

Audio Output

Tizonia connects as a client directly to the hosts PulseAudio server and uses its configuration/devices to output the sound. This is achieved by mapping the UNIX socket used by PulseAudio in the host into the container and configuring its use.

Credits: Method borrowed from docker-pulseaudio-example.

Launch Command

Use the convenience script docker-tizonia.

The script bind mounts the host's '$HOME/.config/tizonia' to make 'tizonia.conf' available inside the container.

NOTE: The Tizonia process running inside the container needs 'rwx' permissions on this directory.

The script also bind mounts the host's '$HOME/.cache' to allow debug logs to be written to disk. For example, gmusicapi logs for Google Play Music can be found at '$HOME/.cache/gmusicapi/log/gmusicapi.log'

Once the script is in your path, and the permissions of '$HOME/.config/tizonia' have been changed, just use the usual Tizonia commands:

# Change Tizonia's config dir permissions
$ chmod a+wrx $HOME/.config/tizonia

# Install the wrapper script in a location in your PATH
$ sudo install docker-tizonia /usr/local/bin

# Pass the usual Tizonia commands to the wrapper
$ docker-tizonia --youtube-audio-mix-search "Queen Official"

Mac Support

Step 1)

It is required that PulseAudio to be installed via homebrew (brew install pulseaudio), and the following lines in /usr/local/Cellar/pulseaudio/13.0/etc/pulse/ to be uncommented:

load-module module-esound-protocol-tcp
load-module module-native-protocol-tcp

Step 2)

To choose the device being used for output, bring up a list of possible output devices and select one as the default sink:

pactl list short sinks

pacmd set-default-sink n  # where n is the chosen output number

Step 3)

Start the Pulseaudio daemon:

pulseaudio --load=module-native-protocol-tcp --exit-idle-time=-1 --daemon

You should now be able to utilize the docker-tizonia script to route audio from the docker container to the host machine!


The Unlicense.

Tizonia's main repo

See tizonia-openmax-il.


Containerized Tizonia cloud music player.







No packages published