Modified source code from: https://github.com/kevineye/docker-shairport-sync
shairport-sync is an Apple AirPlay receiver. It can receive audio directly from iOS devices, iTunes, etc. Multiple instances of shairport-sync will stay in sync with each other and other AirPlay devices when used with a compatible multi-room player, such as iTunes or forked-daapd.
The below commands reference a
Docker Manifest List
at ghcr.io/ragingtiger/shairport-sync:master
built using Docker's
BuildKit.
Simply running commands using this image will pull
the matching image architecture (e.g. amd64
, arm32v7
, or arm64
) based on
the hosts architecture. Hence, if you are on a Raspberry Pi the below
commands will work the same as if you were on a traditional amd64
desktop/laptop computer.
To simply run a container from the image in daemon
mode:
docker run \
-d \
--restart=always \
--net=host \
--device /dev/snd \
-e AIRPLAY_NAME=shairport-sync \
ghcr.io/ragingtiger/shairport-sync:master
To create a container from the image (for later use):
docker create \
--restart=always \
--name=shairport-sync \
--net=host \
--device /dev/snd \
-e AIRPLAY_NAME="shairport-sync" \
ghcr.io/ragingtiger/shairport-sync:master
Then run this container by name using docker start
:
docker start shairport-sync
--net host
must be run in host mode--device /dev/snd
share host alsa system with container. Does not require--privileged
as-v /dev/snd:/dev/snd
would-e AIRPLAY_NAME=Docker
set the AirPlay device name. If unset it defaults to "Docker"- extra arguments will be passed to shairplay-sync (try
-- help
)
A few little tips for getting your setup working
To set the volume max on your system, please make sure you are first in the
audio
group by running the command:
$ groups $USER
USER: USER sudo audio docker
If your output contains the audio
group, then you already have access. If not
then run the following:
sudo usermod -a -G audio $USER
This will add $USER
to the audio group (and assumes you have
sudo privileges
). NOTE: you must reboot for this change to take effect!
Assuming you have audio
group privileges (see
Configure Audio Group Access), you can adjust
the volume on linux with the alsamixer
command:
$ alsamixer
which will bring up the following screen:
Simply use the UP/DOWN arrow keys
to set the volume to what you want (here
it has been set to 100%).