Calibre-Web

There are a handful of solutions for web eBook delivery but Calibre-Web looks and works the best. It also integrates directly with the Calibre eBook management app.

Installation

This is a python app and that pip for installation. Pip is a bit heavy at 275M but even if you wanted to install Calibre-Web manually you still need pip, so let’s go for it. The successive packages in the brackets are optional, but may be of interest to you.

NOTE: for debian 12 and higher you must set up python venv as pip is unhappy mixing it’s repo with debian. You can’t just delete the /usr/lib/python3.11/EXTERNALLY-MANAGED as some of the required packages want write access.

sudo apt -y install python3-pip
sudo apt install python3-venv

# Optional override of IDs to match existing permissions
sudo groupadd --gid 1001 calibre-web
sudo adduser --uid 1001 --gid 1001 --disabled-password --home /opt/calibre-web calibre-web 

sudo -i -u calibre-web

python3 -m venv .venv
source .venv/bin/activate
pip install calibreweb
pip install calibreweb[metadata]
pip install calibreweb[comics]
pip install calibreweb[comics]
pip install calibreweb[goodreads]

# You can change the shell to /usr/sbin/nologin now that we're done with pip
# sudo usermod -s /usr/sbin/nologin calibre-web
exit
sudo vi /etc/systemd/system/calibre-web.service
[Unit]
Description=Calibre-Web

[Service]
ExecStart=/opt/calibre-web/.venv/bin/cps
User=calibre-web

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now calibre-web.service

Migration

All the configuration settings are in the app.db file. You can install new and then copy that file.

scp /opt/calibre-web/.calibre-web/app.db some-other-server:

# On the other server
sudo mv app.db /opt/calibre-web/.calibre-web/app.db
sudo chown calibre-web:calibre-web /opt/calibre-web/.calibre-web/app.db

Operation

You can login with the default creds at

http://192.168.1.18:8083/ admin admin123

It will prompt you for the location of your Calibre database. If it’s writeable, you’ll be able to upload books and make edits from web app, but it’s not strictly required.

Change the admin password by:

Admin User Icon (top right) –> Password –> Save

If you proxy Calibre-Web and authenticate before you allow access, you may whish to allow anonymous browsing and reserve logins for admin access. You can enable that by:

Admin Dial Icon (top right) –> Edit Basic Configuration –> Feature Configuration –> Enable Anonymous Browsing

You can then return the the Admin screen and you’ll see Guest listed as a user. Select that user to turn on the various features. I recommend turn on all except Allow Edit. Selecting the the ‘show..’ selections on the left is best to show all the features.


Last modified April 14, 2026: Old site imports (677647f)