LogoLogo
DownloadBlog
  • Overview
  • Getting started
    • Meshnet explained
    • How to start using Meshnet
      • Using Meshnet on Windows
      • Using Meshnet on Android
      • Using Meshnet on iPhone/iPad
      • Using Meshnet on macOS
      • Using Meshnet on Linux
      • Using Meshnet on Android TV
    • How to use Meshnet securely
  • Features
    • Linking devices in Meshnet
      • Linking external Meshnet devices on Windows
      • Linking external Meshnet devices on Android
      • Linking external Meshnet devices on iPhone/iPad
      • Linking external Meshnet devices on macOS
      • Linking external Meshnet devices on Linux
      • Linking external Meshnet devices on Android TV
    • Explaining permissions
      • Remote access permissions
      • File sharing permissions
      • Traffic routing permissions
      • Local network permissions
    • Renaming devices in Meshnet
      • Renaming devices on Windows
      • Renaming devices on Android
      • Renaming devices on iPhone/iPad
      • Renaming devices on macOS
      • Renaming devices on Linux
    • Sharing files in Meshnet
      • Sharing files on Windows
      • Sharing files on Android
      • Sharing files on iPhone/iPad
      • Sharing files on macOS
      • Sharing files on Linux
      • Sharing files on Android TV
    • Routing traffic in Meshnet
      • Routing traffic from Windows
      • Routing traffic from Android
      • Routing traffic from iPhone/iPad
      • Routing traffic from macOS
      • Routing traffic from Linux
      • Routing traffic from Android TV
  • How-to guides
    • Gaming
      • How to set up a private Minecraft server with Meshnet
      • How to set up a private Stardew Valley server with Meshnet
      • How to play Quake 3 Arena over Meshnet
      • How to set up a private Team Fortress 2 server with Meshnet
      • How to set up a remote game-streaming server for Moonlight
      • How to set up a Palworld dedicated server
      • How to play Fallout: New Vegas multiplayer over Meshnet
      • How to set up a private Factorio server with Meshnet
    • Remote files and media access
      • How to set up and access shared folders
        • Configure and access shared folders on Windows
        • Configure and access shared folders on macOS
        • Configure and access shared folders on Linux
        • Access shared folders from Android
        • Access shared folders from iPhone/iPad
        • Access shared folders from Android TV
      • How to watch videos over Meshnet using Kodi
      • How to configure and access a Jellyfin media server remotely
      • How to set up a Plex media server and access it remotely
      • How to set up a remote NAS using OpenMediaVault and Meshnet
      • How to set up a remote picture library with LibrePhotos and Meshnet
      • How to use Syncthing for remote continuous file synchronization
      • How to set up a remote Airsonic music server
      • How to set up HTTP File Server for remote file access
      • How to set up a remote audiobook server
      • How to host a remote Kavita e-book server
      • How to set up and remotely access Immich using Meshnet
    • Remote device access
      • How to log in to your PC remotely over Meshnet
        • Connect to a Windows device
        • Connect to a macOS device
        • Connect to a Linux device
      • How to access remote systems over Meshnet using SSH
      • How to access your IP camera over Meshnet
      • How to use Home Assistant remotely over Meshnet
      • How to make secure macOS Time Machine backups from anywhere
      • How to use Ansible over Meshnet
      • How to access files in your NAS from anywhere without compromising its security
      • How to set up a phone as a security camera with remote access
      • How to assign custom host names to Meshnet services using Nginx proxy manager
      • How to use Proxmox VE remotely over Meshnet
      • How to set up a remotely controlled 3D printer
      • How to set up and remotely access a CasaOS server
    • Joint projects
      • How to set up an NGINX web server and remotely access it over Meshnet
      • How to use Nextcloud file syncing with Meshnet
      • How to set up pair programming using tmux
      • How to set up a Visual Studio Code server for remote development over Meshnet
      • How to host a Focalboard server for remote project management
      • How to use Meshnet for multi-screen Node.js development
      • How to use the Multi-user editing plugin in Unreal Engine over Meshnet
      • How to set up a private Mumble voice chat server
      • How to host a private Rocket.Chat server
    • Own VPN server setup
      • How to set up a VPN server through self-hosting or with DigitalOcean
      • How to create a VPN server with Microsoft Azure
      • How to create a VPN server with AWS
      • How to create a VPN server with Google Cloud
      • How to create a VPN server with Linode
      • How to create a VPN server with Hetzner
    • Network protection
      • How to set up your network protection with Pi-hole
      • How to set up your own DNS server
      • How to protect your network with AdGuard Home
      • How to use the self-hosted Whoogle search engine remotely
      • How to set up a VPN router using Meshnet
  • Troubleshooting
    • Common issues on Windows
    • Common issues on Android
    • Common issues on iPhone/iPad
    • Common issues on macOS
    • Common issues on Linux
Powered by GitBook

© 2025 Nord Security. All Rights Reserved.

On this page
  • Introduction
  • Before you begin
  • Deploy audiobookshelf using Docker
  • Creating a Docker Compose file
  • Starting the audiobookshelf instance
  • Verifying the container status
  • Configure your audiobookshelf
  • Creating an administrator account
  • Adding audiobook libraries
  • Creating additional user accounts
  • Listen to audiobooks over Meshnet
  • Method 1: Using a mobile app
  • Method 2: Using an internet browser

Was this helpful?

  1. How-to guides
  2. Remote files and media access

How to set up a remote audiobook server

Learn how to configure a personal audiobook server and listen to it remotely using Meshnet.

PreviousHow to set up HTTP File Server for remote file accessNextHow to host a remote Kavita e-book server

Last updated 10 months ago

Was this helpful?

Introduction

is a feature-rich, open-source solution for managing audiobooks. This platform allows you to have a centralized location for audiobooks and podcasts, enabling convenient access from various devices over the network. Due to its self-hosted nature, the server is accessible only from the (LAN). However, you may want to listen to your favorite audiobook while you’re on a commute from work or just taking a stroll around town.

With , you don’t need to leave your home network vulnerable and mess with difficult configurations to remotely access the server. Simply on your device and the server, and enjoy seamless access to your audiobook collection from anywhere.

This tutorial showcases how you can host an audiobookshelf server using Docker on Windows, macOS, and Linux, and access it remotely over Meshnet.

Before you begin

To follow this guide, ensure you have and installed on your device. You can find instructions on how to download and install these tools on the Docker website:

Note

Docker Compose comes pre-installed with Docker Desktop.

Deploy audiobookshelf using Docker

With the prerequisites taken care of, you can begin setting up your audiobookshelf instance. Docker allows you to run the server as a lightweight app on all three desktop platforms.

Creating a Docker Compose file

First, you need to make a Docker Compose file, which will contain all of the instructions for deploying the audiobookshelf instance.

  1. Open PowerShell.

  2. In your preferred directory, create a new audiobookshelf folder and navigate to it using the following command:

    mkdir audiobookshelf; cd audiobookshelf

  3. Create a docker-compose.yml file and open it using Notepad by running:

    notepad docker-compose.yml

    When prompted to create the file, click Yes.

  4. In Notepad, paste the following instructions for the audiobookshelf Docker container:

    version: "3.7"
    services:
      audiobookshelf:
        container_name: audiobookshelf
        image: ghcr.io/advplyr/audiobookshelf:latest
        ports:
          - 13378:80
        volumes:
          - .\config:/config
          - .\metadata:/metadata
          - <\path\to\audiobooks>:/audiobooks
          - <\path\to\podcasts>:/podcasts

  5. Replace the placeholders with the paths appropriate for your configuration:

    • Swap <\path\to\audiobooks> with the path to your audiobook folder.

    • Swap <\path\to\podcasts> with the path to your podcasts folder.

      Example

  6. Press Ctrl + S to save changes.

  7. Exit Notepad.

  1. Open Terminal.

  2. In your preferred directory, create a new audiobookshelf folder and navigate to it using the following command:

    mkdir audiobookshelf && cd audiobookshelf

  3. Create a docker-compose.yml file and open it using the Nano text editor by running:

    nano docker-compose.yml

  4. In the compose file, paste the following instructions for the audiobookshelf Docker container:

    version: "3.7"
    services:
      audiobookshelf:
        container_name: audiobookshelf
        image: ghcr.io/advplyr/audiobookshelf:latest
        ports:
          - 13378:80
        volumes:
          - ./config:/config
          - ./metadata:/metadata
          - </path/to/audiobooks>:/audiobooks
          - </path/to/podcasts>:/podcasts

  5. Replace the placeholders with the paths appropriate for your configuration:

    • Swap </path/to/audiobooks> with the path to your audiobook folder.

    • Swap </path/to/podcasts> with the path to your podcasts folder. Example

  6. Press Ctrl + X, Y, and Enter to save changes and exit the text editor.

Starting the audiobookshelf instance

With the instructions in place, you can deploy the audiobookshelf container by running the following command from the audiobookshelf directory:

docker compose up -d

Verifying the container status

You can run the docker ps command to check the status of your container. In the output, under STATUS, you should see Up and the duration indicating how long the container has been running.

Configure your audiobookshelf

The audiobookshelf server creates a web interface on port 13378. The interface contains all the settings for managing the server and its properties.

Creating an administrator account

To begin personalizing the server, complete the initial setup and create an administrator user account.

  1. Open your internet browser.

  2. Navigate to the following URL: localhost:13378/

  3. Enter your preferred administrator username and password.

  4. Click Submit.

  5. On the login page, enter the credentials you just created and select Submit once more.

Adding audiobook libraries

Upon logging in, you are taken to the Libraries page of your audiobook server. From here, you can add directories containing your audiobook collection.

  1. Select Add your first library.

  2. In the Library name field, enter a custom name for the library you are importing.

  3. Click Browse for folder.

  4. Choose the audiobooks folder, and click Select folder path.

  5. Click Create.

Under Libraries, click the Scan button to scan your newly added directory for audiobooks.

Creating additional user accounts

If you decide to share the audiobook server with your peers, creating new standard user accounts for each user is recommended. This ensures that your administrator account remains secure and that each person can easily keep track of the books they are listening to.

To create a new user account:

  1. On your audiobookshelf web interface, from the left side menu, select Users.

  2. In the upper-right corner, click Add user.

  3. In the Username and Password fields, enter the login credentials for the new user account.

  4. Under Permissions, choose the permissions you want the new account to have.

  5. Click Submit.

The newly added account should now be visible under Users and can be used to log in to the server.

Listen to audiobooks over Meshnet

Now that the server is fully set up, you can start listening to your audiobook collection remotely with the help of Meshnet.

Note

Method 1: Using a mobile app

After installing the mobile app:

  1. Copy the server device’s Nord name from the NordVPN app.

  2. Launch audiobookshelf.

  3. Tap Connect.

  4. In the Server address field, paste the copied Nord name, followed by :13378, and tap Submit. Example

  5. Enter your account’s login credentials and tap Submit.

You should now see your audiobook library in the app. To play an audiobook, select it and tap Stream.

Method 2: Using an internet browser

Another method to access the audiobook server is directly from an internet browser. This option is universally applicable to all devices because it doesn’t require installing additional software.

To access the audiobookshelf server:

  1. Copy the server device’s Nord name from the NordVPN app.

  2. Open your internet browser.

  3. In the URL field, paste the copied Nord name, add :13378/, and press Enter. Example secret.meerkat-himalayas.nord:13378/

  4. Enter the credentials for your audiobookshelf account and click Submit.

Now you can navigate the server and listen to your audiobook collection from your browser wherever you are.

Docker will from and deploy the container.

If you're hosting Audiobookshelf on a Linux device, you must grant the for the devices accessing it. For more information, see .

Audiobookshelf currently has apps available for Android and iOS devices that streamline the user experience. You can find download links for the mobile apps on the page.

Audiobookshelf
local area network
Meshnet
enable Meshnet
Docker
Docker Compose
Docker Desktop instructions for Windows
Docker Desktop instructions for macOS
Docker Desktop Instructions for Linux
Docker Engine instructions for Linux (CLI only)
Docker Compose instructions for Linux (CLI only)
pull the audiobookshelf image
Docker Hub
audiobookshelf documentation
local network permission
Notepad dialog asking to create a file, with the "Yes" button highlighted.
Notepad dialog asking to create a file, with the "Yes" button highlighted.
Notepad window with two lines highlighted.
Notepad window with two lines highlighted.
Terminal window with two lines highlighted.
Terminal window showing the output of the 'docker ps' command.
Username and password fields for the root user filled in.
"Submit" button highlighted on the Login screen.
"audiobooks" folder and the "Select folder path" buttons highlighted.
"Scan" button highlighted.
"Add user" button highlighted.
"Submit" button highlighted.
Table of users with one entry highlighted.
"Connect" button highlighted.
Server's Nord name and port entered and the "Submit" button highlighted.
Login dialog with entered credentials and the "Submit" button highlighted.
Login page of the audiobookshelf server open in an internet browser and the "Submit" button highlighted.
Common issues on Linux