Setting up a Calibre-web Server on Linux

Last Updated
June 14, 2026

Install Docker Engine / Docker CE

  1. Follow the Docker website's documentation, it's solid & also includes instructions to remove previous iterations of Docker on all the other supported distributions.

Install Calibre-web via the Docker Image

  1. Create a new directory for the calibre-web app to live in:
mkdir Docker/claibre-web
cd Docker/claibre-web
  1. Set up a docker-compose.yml file in app directory:
touch docker-compose.yml
  1. Ensure to make required changes to the volumes: section of the default docker-compose.yml:
name: calibre-web

---
services:
  calibre-web:
    image: lscr.io/linuxserver/calibre-web:latest
    container_name: calibre-web
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
      - DOCKER_MODS=linuxserver/mods:universal-calibre
    volumes:
      - /home/USER/Docker/calibre-web/config:/config
# ~/Docker/calibre-web/ will map the Calibre config directory to /config in the app directory
      - /home/USER/Documents/Books:/books 
# ~/Documents/Books = Pre-existing Calibre libary directory including metadata.db file
    ports:
      - 8083:8083
    restart: unless-stopped
  1. Start the Calibre server:
docker compose up -d

Set-up the Calibre Library

  1. From inside the server's LAN access the server via: http://serverIP:8083
  2. Login with the default credentials:
Username: admin
Password: admin123
  1. When prompted set the Calibre Database Location to /books. Link to a pre-existing calibre libary in the docker-compose.yml, in the above example: /home/USER/Documents/Books is mapped to /books.
Database config setup in calibre-web

Access the Calibre Server Remotely

The easiest & most secure way to access the calibre-server remotely is via a VPN. Wireguard is very good for this, & Tailscale is an even simpler abstraction that uses Wireguard as a dependency. Full instructions for installing and configuring Tailscale can be found here.

Using the Calibre-web OPDS Server

Maybe the best thing about the calibre-web server is the fact that it spins up an OPDS server alongside the web UI that can be accessed via many Andoid and iOS eReader apps. This server can be accessed in a browser or in an application by navigating to: http://serverIP:8083/opds

The calibre-web OPDS server linked up in the Yomu app on iOS

The Yomu app on iOS with the Calibre-web OPDS server linked via a Tailscale VPN connection.

OPDS makes it incredibly easy to browse and download a user's full Calibre library of eBooks in any number of OPDS apps across all platforms. Some of the most popular apps are FBReader on iOS, Moon+ Reader for Android & Thorium Reader for Linux, Windows and Apple Silicon Macs. A much larger list of OPDS applications can be found on the Awesome OPDS GitHub page.

My calibre library accessed in Yomu

My personal calibre library being accessed via the OPDS server in Yomu