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.
This project was forked from kevineye/docker-shairport-sync and adapted to run on the Raspberry Pi.
docker build -t protenhan/shairport-sync:3.1.3 .
docker run -d \
--name shairport \
--net host \
--device /dev/snd \
-e AIRPLAY_NAME=Docker \
protenhan/shairport-sync:3.1.3
--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. Defaults to Docker- extra arguments will be passed to shairplay-sync (try
-- help
)
version: '3'
services:
airport:
image: protenhan/shairport-sync:3.1.3 # or use your a different image such as cloudgenius/shairport
restart: always
network_mode: host
devices:
- /dev/snd
environment:
- AIRPLAY_NAME=pi
- PGID=1000
- PUID=1000
Send output to a named pipe:
mkfifo /some/pipe
docker run -d \
--name shairport-pipe \
--net host \
--device /dev/snd \
-e AIRPLAY_NAME=Docker \
-v /some/pipe:/output \
kevineye/shairport-sync \
-o pipe \
-- /output