calibre-web/readme.md

103 lines
3.6 KiB
Markdown
Raw Normal View History

2015-10-11 18:37:10 -07:00
##About
2016-04-27 08:37:19 -07:00
Calibre Web is a web app providing a clean interface for browsing, reading and downloading eBooks using an existing [Calibre](https://calibre-ebook.com) database.
2015-10-11 18:37:10 -07:00
2016-04-27 08:29:57 -07:00
*This software is a fork of [library](https://github.com/mutschler/calibreserver) and licensed under the GPL v3 License.*
2016-03-26 11:48:45 -07:00
2015-10-11 18:42:36 -07:00
![screenshot](https://raw.githubusercontent.com/janeczku/docker-calibre-web/master/screenshot.png)
2015-10-11 18:37:10 -07:00
##Features
- Bootstrap 3 HTML5 interface
2015-10-11 18:42:36 -07:00
- User management
2015-10-11 18:37:10 -07:00
- Admin interface
- OPDS feed for eBook reader apps
- Filter and search by titles, authors, tags, series and language
- Create custom book collection (shelves)
- Support for editing eBook metadata
2015-10-11 18:42:36 -07:00
- Support for converting eBooks from EPUB to Kindle format (mobi/azw)
2015-10-11 18:37:10 -07:00
- Restrict eBook download to logged-in users
2016-03-26 11:48:45 -07:00
- Support for public user registration
2015-10-11 18:42:36 -07:00
- Send eBooks to Kindle devices with the click of a button
- Support for reading eBooks directly in the browser
2016-04-12 14:24:23 -07:00
- Upload new books in PDF format
2016-04-27 08:37:19 -07:00
- Support for Calibre custom columns
2016-04-29 13:30:33 -07:00
- Fine grained per-user permissions
2015-10-11 18:42:36 -07:00
## Quick start
2016-04-29 13:30:33 -07:00
1. Rename `config.ini.example` to `config.ini` and set `DB_ROOT` to the path of the folder where your Calibre library (metadata.db) lives
2. Execute the command: `python cps.py`
3. Point your browser to `http://localhost:8083` or `http://localhost:8083/feed` for the OPDS catalog
2015-10-11 18:37:10 -07:00
**Default admin login:**
*Username:* admin
2015-10-11 18:42:36 -07:00
*Password:* admin123
2016-04-29 13:30:33 -07:00
## Runtime Configuration Options
`PUBLIC_REG`
Set to 1 to enable public user registration.
`ANON_BROWSE`
Set to 1 to allow not logged in users to browse the catalog.
`UPLOADING`
Set to 1 to enable PDF uploading. This requires the imagemagick library to be installed.
2015-10-11 18:42:36 -07:00
## Requirements
2015-10-11 19:37:39 -07:00
Python 2.7+
Optionally, to enable on-the-fly conversion from EPUB to MOBI when using the send-to-kindle feature:
[Download](http://www.amazon.com/gp/feature.html?docId=1000765211) Amazon's KindleGen tool for your platform and place the binary named as `kindlegen` in the `vendor` folder.
2016-04-27 08:29:57 -07:00
## Docker image
2016-10-07 22:58:47 -07:00
Calibre Web can be run as Docker container. The latest image is available on [Docker Hub](https://registry.hub.docker.com/u/janeczku/calibre-web/).
## Reverse Proxy
Reverse proxy configuration examples for apache and nginx to use calibre-web:
nginx configuration for a local server listening on port 8080, mapping calibre web to /calibre:
```
http {
upstream calibre {
server 127.0.0.1:8083;
}
server {
location /calibre {
proxy_bind $server_addr;
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Scheme $scheme;
proxy_set_header X-Script-Name /calibre;
}
}
}
```
Apache 2.4 configuration for a local server listening on port 443, mapping calibre web to /calibre-web:
The following modules have to be activated: headers, proxy, proxy_html, proxy_http, rewrite, xml2enc.
```
Listen 443
<VirtualHost *:443>
SSLEngine on
SSLProxyEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile "C:\Apache24\conf\ssl\test.crt"
SSLCertificateKeyFile "C:\Apache24\conf\ssl\test.key"
<Location /calibre-web>
ProxyHTMLEnable On
ProxyPass http://127.0.0.1:8083/
ProxyPassReverse http://127.0.0.1:8083/
Header edit Location "^http://(.*?)/" "https://$1/calibre-web/"
ProxyHTMLURLMap / /calibre-web/
</Location>
</VirtualHost>
```