Jump to content
linuxserver.io

[Support] Linuxserver.io - Booksonic

75 posts in this topic Last Reply

Recommended Posts

linuxserver_medium.png

 

Application Name: Booksonic

Application Site: http://booksonic.org

Docker Hub: https://hub.docker.com/r/linuxserver/booksonic/

Github: https://github.com/linuxserver/docker-booksonic

 

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

Hi Team,

It seems as though, after the latest docker update booksonic is now getting 500 internal server errors. 

I tried deleting my config, container etc and reinstalling, but am still having the same problem. Here is an excerpt from my log with the error

 

at org.eclipse.jetty.server.Dispatcher.error(Dispatcher.java:81)
at org.eclipse.jetty.server.handler.ErrorHandler.doError(ErrorHandler.java:119)
at org.eclipse.jetty.server.handler.ErrorHandler.handle(ErrorHandler.java:78)
at org.eclipse.jetty.server.Response.sendError(Response.java:655)
at org.eclipse.jetty.server.handler.AbstractHandler.doError(AbstractHandler.java:100)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1247)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:168)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:166)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1155)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:219)
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
at org.eclipse.jetty.server.Server.handle(Server.java:564)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:358)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:279)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:110)
at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:124)
at org.eclipse.jetty.util.thread.Invocable.invokePreferred(Invocable.java:128)
at org.eclipse.jetty.util.thread.Invocable$InvocableExecutor.invoke(Invocable.java:222)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:294)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:199)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:672)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:590)
at java.lang.Thread.run(Thread.java:748)
Caused by:
java.lang.NullPointerException
at org.apache.jasper.compiler.Validator$ValidateVisitor.<init>(Validator.java:515)
at org.apache.jasper.compiler.Validator.validateExDirectives(Validator.java:1853)
at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:219)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:372)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:349)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:333)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:600)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:368)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:385)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:329)
at org.eclipse.jetty.jsp.JettyJspServlet.service(JettyJspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:833)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:535)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:566)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:190)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:188)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1253)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:168)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:166)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1155)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:203)
at org.eclipse.jetty.server.Dispatcher.error(Dispatcher.java:81)

Share this post


Link to post

I'm not seeing the same error.

 


[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 10-adduser: executing...

-------------------------------------
_ _ _
| |___| (_) ___
| / __| | |/ _ \
| \__ \ | | (_) |
|_|___/ |_|\___/
|_|

Brought to you by linuxserver.io
We gratefully accept donations at:
https://www.linuxserver.io/donations/
-------------------------------------
GID/UID
-------------------------------------
User uid: 99
User gid: 100
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing...
[cont-init.d] 30-config: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
2017-05-27 16:34:17.593:INFO::main: Logging initialized @173ms
2017-05-27 16:34:17.599:INFO:oejr.Runner:main: Runner
2017-05-27 16:34:17.781:INFO:oejs.Server:main: jetty-9.3.14.v20161028
2017-05-27 16:34:19.371:INFO:/booksonic:main: Initializing Spring root WebApplicationContext
2017-05-27 16:34:25.500:INFO:/booksonic:main: Initializing Spring FrameworkServlet 'subsonic'
2017-05-27 16:34:26.447:INFO:oejsh.ContextHandler:main: Started o.e.j.w.WebAppContext@2d6d8735{/booksonic,file:///tmp/jetty-0.0.0.0-4040-booksonic.war-_booksonic-any-7032787626511510045.dir/webapp/,AVAILABLE}{file:///app/booksonic/booksonic.war}
2017-05-27 16:34:26.458:INFO:oejs.AbstractConnector:main: Started ServerConnector@396639b{HTTP/1.1,[http/1.1]}{0.0.0.0:4040}
2017-05-27 16:34:26.459:INFO:oejs.Server:main: Started @9041ms

 

Share this post


Link to post
1 hour ago, CHBMB said:

I'm not seeing the same error.

 



[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 10-adduser: executing...

-------------------------------------
_ _ _
| |___| (_) ___
| / __| | |/ _ \
| \__ \ | | (_) |
|_|___/ |_|\___/
|_|

Brought to you by linuxserver.io
We gratefully accept donations at:
https://www.linuxserver.io/donations/
-------------------------------------
GID/UID
-------------------------------------
User uid: 99
User gid: 100
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing...
[cont-init.d] 30-config: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
2017-05-27 16:34:17.593:INFO::main: Logging initialized @173ms
2017-05-27 16:34:17.599:INFO:oejr.Runner:main: Runner
2017-05-27 16:34:17.781:INFO:oejs.Server:main: jetty-9.3.14.v20161028
2017-05-27 16:34:19.371:INFO:/booksonic:main: Initializing Spring root WebApplicationContext
2017-05-27 16:34:25.500:INFO:/booksonic:main: Initializing Spring FrameworkServlet 'subsonic'
2017-05-27 16:34:26.447:INFO:oejsh.ContextHandler:main: Started o.e.j.w.WebAppContext@2d6d8735{/booksonic,file:///tmp/jetty-0.0.0.0-4040-booksonic.war-_booksonic-any-7032787626511510045.dir/webapp/,AVAILABLE}{file:///app/booksonic/booksonic.war}
2017-05-27 16:34:26.458:INFO:oejs.AbstractConnector:main: Started ServerConnector@396639b{HTTP/1.1,[http/1.1]}{0.0.0.0:4040}
2017-05-27 16:34:26.459:INFO:oejs.Server:main: Started @9041ms

 

 

i reverted the last commit that was probably the cause, it seems latest jetty version doesn't play nicely.

Share this post


Link to post

I just installed this docker and admin:admin isn't working. I tried to uninstall, clear the appdata folder and reinstall. I'm having the same issue. Does anyone know the correct credentials for this?

 

Thanks

Share this post


Link to post
28 minutes ago, ryryonline said:

I just installed this docker and admin:admin isn't working. I tried to uninstall, clear the appdata folder and reinstall. I'm having the same issue. Does anyone know the correct credentials for this?

 

Thanks

 

Just pulled a fresh container with fresh appdata and admin as username and password works for me.

Share this post


Link to post

Hello,

 

I am having an issue with podcasts. I'm getting an error saying, Failed to create directory /podcasts/Revolutions

 

This happens when I try to add a new podcast and download the episodes. Is this a permissions thing?

 

Thanks!

Share this post


Link to post

Hi.

I seem to have an issue connecting to the server.


This is my configuration:

I have the docker container running on port 4040.
In my my router port 4040 is forwarded to my server.

 

When I try to add a server in the app I add the following:

 

Server address:

http://[mypublicip]:4040
Local network address Http://192.168.1.2:4040

 

But when I test the connection the following error message appears:

Connection failure. Resource not found, please check the server address.

 

If I enter the URL

http://[mypublicip]:4040

In my browser this appears:

Error 404 - Not Found.

No context on this server matched or handled this request.
Contexts known to this server are:


favicon.ico Powered by Jetty:// 9.3.14.v20161028


 

If I enter the URL http://[mypublicip]:4040/booksonic
In my browser I connect to the admin page just fine.

 

Do you have any suggestions to what I'm missing?

 

/L

Share this post


Link to post

Remove CONTEXT_PATH from your docker template.

Share this post


Link to post

Thank you for suggestion.

However after I added "booksonic" to the URL it worked.

(Local network address Http://192.168.1.2:4040/booksonic

And

http://[mypublicip]:4040)

 

Share this post


Link to post

Removing context path would mean you don't need to add booksonic to your path, that's why I suggested it.....

Sent from my LG-H815 using Tapatalk

Share this post


Link to post

I have booksonic up and running, as in I can listen to media on my computer, but am trying to get it working to play through SONOS, and I did the remote installation.  But when I go to put in my user id/pw, it says "The Booksonic remote server did not recognize your login info"

 

So I started to try to figure that out, and notice that its not connecting to my router at all.  I have a Netgear R7000, and have port forwarding going to 4040, but it still says "no router found"

 

and under LOG it says 

 

any thoughts?

 

Thanks

Chase

 

[1/28/18 2:36:41 PM CST] INFO HsqlDaoHelper Checking database schema.
[1/28/18 2:36:42 PM CST] INFO HsqlDaoHelper Done checking database schema.
[1/28/18 2:36:43 PM CST] INFO SettingsService Java: 1.8.0_151, OS: Linux
[1/28/18 2:36:43 PM CST] INFO MediaScannerService Automatic media library scanning scheduled to run every 1 day(s), starting at Mon Jan 29 03:00:00 CST 2018
[1/28/18 2:36:43 PM CST] INFO UPnPService Starting UPnP service...
[1/28/18 2:36:43 PM CST] INFO PodcastService Automatic Podcast update scheduled to run every 24 hour(s), starting at Sun Jan 28 14:41:43 CST 2018
[1/28/18 2:36:43 PM CST] INFO VersionService Resolved local Booksonic version to: 1.1.beta1
[1/28/18 2:36:43 PM CST] INFO UPnPService Enabling UPnP/DLNA media server
[1/28/18 2:36:43 PM CST] INFO UPnPService Starting UPnP service - Done!
[1/28/18 2:36:48 PM CST] INFO BootstrapVerificationFilter Servlet container: jetty/9.3.14.v20161028
[1/28/18 2:36:50 PM CST] INFO VersionService Resolved latest Booksonic final version to: 1.0
[1/28/18 2:36:50 PM CST] INFO VersionService Resolved latest Booksonic beta version to: 1.1.beta1
[1/28/18 2:36:51 PM CST] INFO SonosService No Sonos controller found
[1/28/18 2:36:53 PM CST] WARN NetworkService No UPnP router found.
[1/28/18 2:41:43 PM CST] INFO PodcastService Starting scheduled Podcast refresh.
[1/28/18 2:41:43 PM CST] INFO PodcastService Completed scheduled Podcast refresh.
[1/28/18 2:54:36 PM CST] INFO PlayerDao Created player 2.
[1/28/18 3:16:03 PM CST] WARN NetworkService No UPnP router found.
[1/28/18 3:16:05 PM CST] WARN NetworkService No UPnP router found.
[1/28/18 3:16:08 PM CST] WARN NetworkService No UPnP router found.

Share this post


Link to post

It's not saying no router found, it's saying no UPnP router found.  Which shouldn't matter as you've opened the port manually.

Share this post


Link to post

its possible it's working fine, I just cant tell because I am trying to play it on SONOS, and I cant get the server to recognize my login info, and the subsonic app crashes on my phone, so I have a ticket in for that, to have that looked at.

Share this post


Link to post

Says the same on mine, and it's working fine for me.  So ignore it safely.

Share this post


Link to post

awesome, thanks.  Any thoughts on the SONOS portion?  I've followed the instructions on the subsonic page, I just cant get it to connect. I may need to reach out to subsonic direct for assistance on that.

 

Share this post


Link to post

Not used a Sonos, but I have mine connecting fine using the Booksonic Android app and booksonic behind a reverse proxy.

Share this post


Link to post

ok, i'll contact subsonic on the sonos part.  I've submitted a ticket on the booksonic android app, because the app kept crashing, wont even let me pull it up at all.  Hopefully that can get taken care of, and I'll be able to start using this on the go.

 

Share this post


Link to post
On 1/28/2018 at 3:48 PM, CHBMB said:

Not used a Sonos, but I have mine connecting fine using the Booksonic Android app and booksonic behind a reverse proxy.

Could you please elaborate on this? I have been unable to get it to work behind nginx reverse proxy. I have airsonic working this way, and tried using the same setup for booksonic but without any luck.

 

CONTEXT_PATH variable is set to / or removed altogether which appears to work if accessing the container directly.

I have tried adding "server.use-forward-headers=true" to booksonic.properties as was required for airsonic

 

booksonic.subdomain.conf:

# make sure that your dns has a cname set for booksonic and that your booksonic container is not using a base url

server {
    listen 443 ssl;
    listen [::]:443 ssl;

    server_name booksonic.*;

    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;

        proxy_set_header X-Real-IP         $remote_addr;
        proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;
        proxy_set_header X-Forwarded-Host  $http_host;
        proxy_set_header Host              $http_host;
		proxy_max_temp_file_size           0;
        resolver 127.0.0.11 valid=30s;
        set $upstream_booksonic booksonic;
        proxy_pass http://$upstream_booksonic:4040;
    }
}

 

Share this post


Link to post

@BrandonG777

 

Here's my docker run command.


 

docker run -d --name='booksonic' \

--net='docker' \

--log-opt max-size='10m' \

--log-opt max-file='1' \

-e TZ="Europe/London" \

-e HOST_OS="Unraid" \

-e 'PUID'='99' \

-e 'PGID'='100' \

-e 'CONTEXT_PATH'='booksonic' \

-p '4040:4040/tcp' \

-v '/mnt/user/books/audiobooks/books/':'/books':'rw' \

-v '/mnt/cache/appdata/booksonic':'/config':'rw,slave' \

'linuxserver/booksonic'


My LE server block.
 

server {
    listen 80;
        server_name www.server.com;
        return 301 https://server.com$request_uri;
}

server {
    listen 443;
        server_name www.server.com;
        return 301 https://server.com$request_uri;
}

server {
        listen 80;
        server_name server.com;
        return 301 https://server.com$request_uri;
}

proxy_cache_path cache/ keys_zone=auth_cache:10m;

server {

    listen 443 ssl default_server;
    server_name server.com;

    root /config/www;
    index index.html index.htm index.php;

    include /config/nginx/ssl.conf;
    include /config/nginx/ldap.conf;
        

    client_max_body_size 0;

    location ~ \.php$ {
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            # With php7-cgi alone:
            fastcgi_pass 127.0.0.1:9000;
            # With php7-fpm:
            #fastcgi_pass unix:/var/run/php7-fpm.sock;
            fastcgi_index index.php;
            include /etc/nginx/fastcgi_params;
    }

    location / {
            try_files $uri $uri/ /index.php?$query_string;
    }
    location /booksonic {
            include /config/nginx/proxy.conf;
            resolver 127.0.0.11 valid=30s;
            set $upstream_booksonic booksonic;
            proxy_pass http://$upstream_booksonic:4040;
    }

}

Don't forget you need to restart LE when you change any of the server config.

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.