# Running AirSonic in Docker on Ubuntu Server

## What is AirSonic

> Airsonic is a free, web-based media streamer, providing ubiquitous access to your music. Use it to share your music with friends, or to listen to your own music while at work. You can stream to multiple players simultaneously, for instance to one player in your kitchen and another in your living room. -https://airsonic.github.io/

## Installing Docker

1. Log into the Linux based device
2. Run the following commands in the terminal
   # install prerequisites
   sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg-agent -y
   # add docker gpg key
   curl -fsSL https://download.docker.com/linux/$(awk -F'=' '/^ID=/{ print $NF }' /etc/os-release)/gpg | sudo apt-key add -
   # add docker software repository
   sudo add-apt-repository "deb [arch=$(dpkg --print-architecture)] https://download.docker.com/linux/$(awk -F'=' '/^ID=/{ print $NF }' /etc/os-release) $(lsb_release -cs) stable"
   # install docker
   sudo apt install docker-ce docker-compose containerd.io -y
   # enable and start docker service
   sudo systemctl enable docker && sudo systemctl start docker
   # add the current user to the docker group
   sudo usermod -aG docker $USER
   # reauthenticate for the new group membership to take effect
   su - $USER

## Running AirSonic

1. Now that Docker is installed, run the following commands to setup the AirSonic Docker container and run it
   # create working directories
   mkdir /home/$USER/docker/airsonic/data -p && mkdir /home/$USER/docker/airsonic/music -p && mkdir /home/$USER/docker/airsonic/playlists -p && mkdir /home/$USER/docker/airsonic/podcasts -p
   # run the airsonic container
   docker run -d --name=airsonic -v /home/$USER/docker/airsonic/data:/airsonic/data -v /home/$USER/docker/airsonic/music:/airsonic/music -v /home/$USER/docker/airsonic/playlists:/airsonic/playlists -v /home/$USER/docker/airsonic/podcasts:/airsonic/podcasts -p 4040:4040 airsonic/airsonic
2. Open a web browser and navigate to http://DNSorIP:4040
3. Login to AirSonic with username admin and password admin
4. Welcome to AirSonic running in a Docker container
5. Click the Change administrator password link
6. Check the Change password box
7. Input the new password twice and click the Save button

Documentation: https://hub.docker.com/r/airsonic/airsonic