How to Install Calibre-Web on Ubuntu 24.04
Calibre-Web is an open-source web application that allows you to manage and read your eBook library from a browser.
It provides an intuitive interface for browsing, searching, and reading books, while supporting multiple formats and user accounts.
The steps below walk you through installing Calibre-Web on Ubuntu 24.04.
Step 1 – Install Required Packages
First, install the system dependencies:
sudo apt update
sudo apt install -y python3 python3-venv python3-pip git sqlite3
-
python3-venv & python3-pip: Required for creating a Python virtual environment.
-
git: Needed to clone or manage Python packages.
-
sqlite3: Provides a lightweight database for Calibre-Web configuration.
-
Step 2 – Create a Dedicated User
Create a system user and group for Calibre-Web:
sudo useradd -r -m -d /opt/calibre-web -s /bin/bash calibre
This ensures Calibre-Web runs under its own user, improving security.
Step 3 – Set Up the Installation Directory
Create directories for the application and configuration:
sudo mkdir -p /opt/calibre-web
sudo chown -R calibre:calibre /opt/calibre-web
-
Step 4 – Create Python Virtual Environment
sudo -u calibre python3 -m venv /opt/calibre-web/calibre-web-env
Activate the virtual environment and install Calibre-Web:
sudo -u calibre /opt/calibre-web/calibre-web-env/bin/pip install --upgrade pip
sudo -u calibre /opt/calibre-web/calibre-web-env/bin/pip install calibreweb
-
Optional dependencies (for markdown, requests, image processing):
sudo -u calibre /opt/calibre-web/calibre-web-env/bin/pip install markdown requests Pillow
Step 5 – Initialize Configuration
Create a configuration directory:
sudo -u calibre mkdir -p /opt/calibre-web/config
- The SQLite database
app.db
will be created automatically on the first web access. Admin credentials can also be set in the web interface. -
Step 6 – Set Up Systemd Service
Create a systemd service file at
/etc/systemd/system/calibre-web.service
:
[Unit]
Description=Calibre-Web service
After=network.target
[Service]
Type=simple
User=calibre
Group=calibre
WorkingDirectory=/opt/calibre-web
ExecStart=/opt/calibre-web/calibre-web-env/bin/cps
Restart=on-failure
RestartSec=5
Environment=CALIBRE_DB_PATH=/opt/calibre-web/config
[Install]
WantedBy=multi-user.target
Reload systemd and enable the service:
sudo systemctl daemon-reload
sudo systemctl enable --now calibre-web
-
-
Step 7 – Configure Firewall
Allow Calibre-Web’s default port (
8083
) through UFW:
sudo ufw allow 8083/tcp
sudo ufw reload
Step 8 – Access Calibre-Web
Open your browser and navigate to:
http://<your_server_ip>:8083
-
-
Congratulations! Calibre-Web is now installed and accessible on Ubuntu 24.04, ready to manage and serve your eBook library.