Jump to content
linuxserver.io

[Support] Linuxserver.io - Calibre-Web

23 posts in this topic Last Reply

Recommended Posts

linuxserver_medium.png

 

Application Name: Calibre-Web

Application Site: https://github.com/janeczku/calibre-web

Docker Hub: https://hub.docker.com/r/linuxserver/calibre-web/

Github: https://github.com/linuxserver/docker-calibre-web

 

Please post any questions/issues relating to this docker you have in this thread.

 

If you are not using Unraid (and you should be!) then please do not post here, instead head to linuxserver.io to see how to get support

Edited by linuxserver.io

Share this post


Link to post

I've been using for a while, but recently when I try to use 'send to kindle' I get a 504 Gateway Time-out error.  Is anyone else having problems?

Share this post


Link to post
4 hours ago, DZMM said:

I've been using for a while, but recently when I try to use 'send to kindle' I get a 504 Gateway Time-out error.  Is anyone else having problems?

 

Nope

Share this post


Link to post

hmmm - will try changing email servers

Share this post


Link to post

I am installing this docker and when i launch the UI it goes to /config and asks for database location. Is this a pre-defined path, or do i just put in where i want. No matter what i try, i get a 403 forbidden error and this in the logs.

 

 

[2018-06-11 11:09:39,117] ERROR in app: Exception on /config
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/flask/app.py", line 2292, in wsgi_app
response = self.full_dispatch_request()
File "/usr/lib/python2.7/site-packages/flask/app.py", line 1815, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/usr/lib/python2.7/site-packages/flask/app.py", line 1718, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/usr/lib/python2.7/site-packages/flask/app.py", line 1813, in full_dispatch_request
rv = self.dispatch_request()
File "/usr/lib/python2.7/site-packages/flask/app.py", line 1799, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/app/calibre-web/cps/web.py", line 486, in inner
return f(*args, **kwargs)
File "/app/calibre-web/cps/web.py", line 2510, in basic_configuration
return configuration_helper(1)
File "/app/calibre-web/cps/web.py", line 2709, in configuration_helper
if not db.setup_db():
File "/app/calibre-web/cps/db.py", line 338, in setup_db
cc = conn.execute("SELECT id, datatype FROM custom_columns")
File "/usr/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 942, in execute
return self._execute_text(object, multiparams, params)
File "/usr/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1104, in _execute_text
statement, parameters
File "/usr/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1200, in _execute_context
context)
File "/usr/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1413, in _handle_dbapi_exception
exc_info
File "/usr/lib/python2.7/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
reraise(type(exception), exception, tb=exc_tb, cause=cause)
File "/usr/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1193, in _execute_context
context)
File "/usr/lib/python2.7/site-packages/sqlalchemy/engine/default.py", line 508, in do_execute
cursor.execute(statement, parameters)
OperationalError: (sqlite3.OperationalError) no such table: custom_columns [SQL: 'SELECT id, datatype FROM custom_columns'] (Background on this error at: http://sqlalche.me/e/e3q8)

Share this post


Link to post
11 minutes ago, unsainted said:

I am installing this docker and when i launch the UI it goes to /config and asks for database location. Is this a pre-defined path, or do i just put in where i want. No matter what i try, i get a 403 forbidden error and this in the logs.

 

 

[2018-06-11 11:09:39,117] ERROR in app: Exception on /config
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/flask/app.py", line 2292, in wsgi_app
response = self.full_dispatch_request()
File "/usr/lib/python2.7/site-packages/flask/app.py", line 1815, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/usr/lib/python2.7/site-packages/flask/app.py", line 1718, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/usr/lib/python2.7/site-packages/flask/app.py", line 1813, in full_dispatch_request
rv = self.dispatch_request()
File "/usr/lib/python2.7/site-packages/flask/app.py", line 1799, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/app/calibre-web/cps/web.py", line 486, in inner
return f(*args, **kwargs)
File "/app/calibre-web/cps/web.py", line 2510, in basic_configuration
return configuration_helper(1)
File "/app/calibre-web/cps/web.py", line 2709, in configuration_helper
if not db.setup_db():
File "/app/calibre-web/cps/db.py", line 338, in setup_db
cc = conn.execute("SELECT id, datatype FROM custom_columns")
File "/usr/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 942, in execute
return self._execute_text(object, multiparams, params)
File "/usr/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1104, in _execute_text
statement, parameters
File "/usr/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1200, in _execute_context
context)
File "/usr/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1413, in _handle_dbapi_exception
exc_info
File "/usr/lib/python2.7/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
reraise(type(exception), exception, tb=exc_tb, cause=cause)
File "/usr/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1193, in _execute_context
context)
File "/usr/lib/python2.7/site-packages/sqlalchemy/engine/default.py", line 508, in do_execute
cursor.execute(statement, parameters)
OperationalError: (sqlite3.OperationalError) no such table: custom_columns [SQL: 'SELECT id, datatype FROM custom_columns'] (Background on this error at: http://sqlalche.me/e/e3q8)

it's for entering the location of your calibre DB - in your docker settings you should map /books_library or /books (not sure why I've got two paths now) to that location and enter the path in the webui admin settings

Share this post


Link to post
1 minute ago, DZMM said:

it's for entering the location of your calibre DB - in your docker settings you should map /books_library or /books (not sure why I've got two paths now) to that location and enter the path in the webui admin settings

Thats what i had thought. I have /books mapped to my ebooks folder /mnt/user/media/e-books

I entered /books into the config for the location and got the same error. I dont have a /books_library path in my setup?

calibre.PNG

Share this post


Link to post
8 minutes ago, unsainted said:

Thats what i had thought. I have /books mapped to my ebooks folder /mnt/user/media/e-books

I entered /books into the config for the location and got the same error. I dont have a /books_library path in my setup?

calibre.PNG

Do you have a metadata.db file in /mnt/user/media/e-Books that's been created by your calibre app/docker?

 

I think I have the second path from when I created myself - for some reason it's down as required.   I'm going to leave it alone as I don't want to miss up the history of users.

Share this post


Link to post

Just went back to the WebUI and refreshed it, now its presenting a login. is there default login?

Share this post


Link to post
7 minutes ago, unsainted said:

Yes, I see the metadata.db file there. Its 0KB

 

 

that's probably your problem.  Add some books to your library using your calibre app/docker and I think your problems will go away.

 

You do have calibre running somewhere else right?  This docker is just a nice ui sits on top - you still have to run calibre somewhere else.

Share this post


Link to post

Ah gotcha, thats probably my issue then, I thought this was all self-contained. is there a calibre docker you would recommend?

Share this post


Link to post

I use the RDP-Calibre docker and the linuxserver lazylibrarian docker. 

 

It's a shame that books aren't as well supported as say movies or TV shows.  Hopefully somebody will build a sonarr based service for books - it's a real pity that the lazylibrarian guys based their service on headphones rather than sonarr.

Share this post


Link to post

Notice

 

Recommend you all update to the latest container version due to the discovery of a vulnerability.

Share this post


Link to post

Hi, 

When I try to use advanced search I get the following error. 

I'm trying to utilise the custom columns I have in calibre and saw that you need advanced search to use them.

 

Regards,

Bilal Yassine

1.png

Share this post


Link to post

First of all, I would like to extend a thanks for this wonderful docker.   I wanted a nice way to share my library with friends and family, and this fits the bill with elegance, however, I seem to be stuck with one aspect of the docker -- the E-book converter.

 

I am utilizing the RDP-Calibre docker from aptalca to manage my library, and this Calibre-Web docker configured through a reverse-proxy using Letsencrypt.  Since I and family members have KIndle's, I would like the ability to convert my Epubs to mobi and email directly from Calibre-web instead of doing through RDP-Calibre.

 

Under Calibre-Web Basic configuration, there are settings for External binaries with the following options:

 

1665398503_ScreenShot2018-11-24at3_40_55PM.png.1b981e4343dc99dacc7961cd1f180214.png

 

I initially tried to use calibre's ebook converter as I assumed it would be included in the docker but unless I'm mistaken, could not find it installed.   I bashed into the docker and looked everywhere.  I even tried to install the calibre package following the directions on this page to no avail.   I thought I was close following the manual installation instructions below but could not install the "calibre_postinstall" executable, which I'm assuming installs the dependencies required to get Calibre's bundled "ebook-convert" binary to work.

 mkdir -p /opt/calibre && rm -rf /opt/calibre/* tar xvf /config/calibre-3.34.0-x86_64.txz -C /opt/calibre && /opt/calibre/calibre_postinstall

 

At this point, I gave up and figured I'd download kindlegen from Amazon and give it a whirl.  From the docker bash shell I am able to run it with no issues, but when I click on edit metadata for a given Epub book, the convert options are not there.  If I select use calibre's ebook converter again, they show up even though I don't have a working "ebook-convert" binary -- go figure.

 

I also noticed the following kindlegen status error when I clicked about and I don't know why as the kindlegen binary seems to run fine when bashed into the docker.  I'll admit that I'm not a linux expert and could be missing something obvious, and I'm hoping that's the case as would love to get this working :)

 

cw_about.thumb.png.af62429b939de54738c76cb53f776a65.png

 

Many thanks in advance for any ideas/guidance :)

 

 

Edited by phorse

Share this post


Link to post

@phorse Here's what I did to get the kindlegen binary working.

 

1. Downloaded tarball from https://www.amazon.com/gp/feature.html?docId=1000765211 to the docker config folder.

2. Untar'ed it and removed everything from it except for `kindlegen`

3. `chmod 777 kindlegen`

4. `chown nobody:users kindlegen`

5. Changed the external binary's path to /config/kindlegen

kindlegen.PNG.c6f40e5dc68bac22004814fb5d9fbe54.PNG

6. Confirmed tool showing up in info page

info.PNG.e4ef14074a0a765db2286248dbd8d6f5.PNG

 

Hopefully that gets it working for you. I tested the convert and send feature to my email and it worked fine. Good luck.

Share this post


Link to post
On 12/22/2018 at 12:17 PM, peteknot said:

@phorse Here's what I did to get the kindlegen binary working.

 

1. Downloaded tarball from https://www.amazon.com/gp/feature.html?docId=1000765211 to the docker config folder.

2. Untar'ed it and removed everything from it except for `kindlegen`

3. `chmod 777 kindlegen`

4. `chown nobody:users kindlegen`

5. Changed the external binary's path to /config/kindlegen

kindlegen.PNG.c6f40e5dc68bac22004814fb5d9fbe54.PNG

6. Confirmed tool showing up in info page

info.PNG.e4ef14074a0a765db2286248dbd8d6f5.PNG

 

Hopefully that gets it working for you. I tested the convert and send feature to my email and it worked fine. Good luck.

 

Many thanks, it's working now.  I feel so foolish as all I needed to do was supply the full path to the executable, including the executable name, rather than simply supplying the path where the kindlegen executable was located :)

 

Thanks again!

Share this post


Link to post

I've got what I think is everything setup between LazyLibrarian and Calibre-Web but I seem to be at a loss for Calibre-Web to notice an updated book.  LazyLibrarian deposits the book in the same folder that Calibre is looking at but I don't see an option to "update" Calibre to reflect the new book.   

 

Unless I'm blind, which I'm open to being.

Share this post


Link to post

Does anybody have a good config to set up a reverse proxy?

Share this post


Link to post
On 2/3/2019 at 12:32 AM, hgelpke said:

Does anybody have a good config to set up a reverse proxy?

server {
    listen 80;
    server_name calibre.<yourdomain>.com;
    return 301 https://$server_name$request_uri;
    }
server {
    listen 443 ssl;
    listen [::]:443 ssl;

    server_name calibre.*;

    include /config/nginx/ssl.conf;

    client_max_body_size 0;

    # enable for ldap auth, fill in ldap details in ldap.conf
    #include /config/nginx/ldap.conf;

    location / {
        # enable the next two lines for http auth
        #auth_basic "Restricted";
        #auth_basic_user_file /config/nginx/.htpasswd;

        # enable the next two lines for ldap auth
        #auth_request /auth;
        #error_page 401 =200 /login;

        include /config/nginx/proxy.conf;
        resolver 127.0.0.11 valid=30s;
        set $upstream_calibre calibre-web;
        proxy_pass http://$upstream_calibre:8083;
    }
}

 

the first part just re routes from port 80 to port 443 so if you type http://calibre.<yourdomain>.com it changes it to https//calibre.<yourdomin>.com

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now