[How-To] Install Navidrome Using docker-compose (an Airsonic/Booksonic Alternative)

  • Introduction

    Navidrome is a no-frills crisp and clean approach to an audio media server. I have only tested it using mp3 files. If you have proper id3 tags in place for track numbers, this audio server works equally well for music files and audiobook (mp3) files. The documentation states that it "Runs well even on simple Raspberry Pi Zero and old hardware setups". Once installed there is nothing to set up. Just load up your audio media and add your login information at first launch. Navidrome works with all of the Subsonic compliant client apps. Navidrome's Overview page has some very impressive features.


    Prerequisites

    • OMV5 running and a hard drive mounted
    • OMV-Extras.org installed and docker installed. You may also need docker-compose installed from the command line.
    • A working knowledge of docker-compose from the command line.

    If you are familiar with docker-compose on the command line, this install is very easy.


    Installation

    • Create two shares: appdata, and navidrome. You may already have a "data" share created with a different name. Adjust your docker-compose.yml file accordingly.
    • Create SMB shares of the above two shares if you haven't already.
    • Log in to your server using the command line of your choice using your user of choice. Despite common practice, you should not log in as root. Use the sudo command instead.
    • Create a user folder if you haven't already: mkdir /home/user You can create a docker-compose-specific user, or use the main user you set up when you first installed OMV5.
    • Create a docker-compose folder for the Navidrome yml file: mkdir /home/user/navidrome
    • Move into your navidrome folder: cd /home/user/navidrome
    • Create a docker-compose.yml file nano docker-compose.yml
    • Copy/paste the yml file below:
    • Save your file by typing control-x, then y followed by the return key, then pressing the enter key.
    • Install the Navidrome container: docker-compose up -d
    • In a browser go to your-ip-address:4533 and set up your login information.
    • Add your media into your navidrome/music folder according to the author/album/files hierarchy, as you would in Airsonic or Booksonic.

    Bonus

    In addition to a music server (as above) you can also create an audiobooks server on the same OMV5 install using the same Navidrome container simply by adjusting a few things:

    • Create a new yml folder: mkdir /home/user/audiobooks
    • Navigate into your new docker-compose folder: cd /home/user/audiobooks
    • Create a new docker-compose.yml file, as above
    • In your new yml file change your container_name: navidrome to audiobooks and...
    • Adjust your media volumes to - /srv/dev-disk-by-label-disk1/navidrome/audiobooks:/music:ro and...
    • Change your ports: from - 4533:4533 to - 4534:4533 and...
    • Login as above only using :4534 at the end of your ip address.
    • Install your media into your audiobooks folder as above.

    Simple and sure backup and restore: In a Scheduled Job: rsync -av --delete /srv/dev-disk-by-label-SOURCE/ /srv/dev-disk-by-label-DESTINATION/ (HT: Getting Started with OMV5)
    OMV Version: Ver. 5 (current) - Hardware: NanoPi M4, Nextcloud, Plex, Airsonic, Booksonic, Calibre, & Heimdall - Acer Aspire T180, backup - Odroid XU4, Pi-Hole (DietPi) - Testing/Playing: hc2, xu4, Pi 3B+, Odroid H2, and HP dx2400, Debian 10 XFCE.

    Edited 4 times, last by Agricola ().

  • KM0201

    Approved the thread.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!