Giter Club home page Giter Club logo

docker-ubooquity's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docker-ubooquity's Issues

ubooquity:latest gives error on attempting to login, ubooquity:23 working

linuxserver.io

Unraid

docker run -d --name="ubooquity" --net="bridge" -e TZ="Europe/London" -e HOST_OS="unRAID" -e "MAXMEM"="512" -e "PUID"="99" -e "PGID"="100" -p 2202:2202/tcp -v "/mnt/user/books/":"/books":ro -v "/mnt/user/comics/":"/comics":ro -v "/mnt/cache/.appdata/ubooquity-test":"/config":rw linuxserver/ubooquity

java.lang.NoClassDefFoundError: Could not initialize class sun.security.ec.SunEC
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.8.0_121]
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:1.8.0_121]
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0_121]
at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[na:1.8.0_121]
at java.lang.Class.newInstance(Class.java:442) ~[na:1.8.0_121]
at sun.security.jca.ProviderConfig$2.run(ProviderConfig.java:221) ~[na:1.8.0_121]
at sun.security.jca.ProviderConfig$2.run(ProviderConfig.java:206) ~[na:1.8.0_121]
at java.security.AccessController.doPrivileged(Native Method) ~[na:1.8.0_121]
at sun.security.jca.ProviderConfig.doLoadProvider(ProviderConfig.java:206) ~[na:1.8.0_121]
at sun.security.jca.ProviderConfig.getProvider(ProviderConfig.java:187) ~[na:1.8.0_121]
at sun.security.jca.ProviderList.getProvider(ProviderList.java:233) ~[na:1.8.0_121]
at sun.security.jca.ProviderList$ServiceList.tryGet(ProviderList.java:434) ~[na:1.8.0_121]
at sun.security.jca.ProviderList$ServiceList.access$200(ProviderList.java:376) ~[na:1.8.0_121]
at sun.security.jca.ProviderList$ServiceList$1.hasNext(ProviderList.java:486) ~[na:1.8.0_121]
at javax.crypto.Mac.getInstance(Mac.java:174) ~[na:1.8.0_121]
at com.ubooquity.f.c.a(SourceFile:29) ~[Ubooquity.jar:1.10.1]
at com.ubooquity.provider.webadmin.j.a(SourceFile:600) ~[Ubooquity.jar:1.10.1]
at com.ubooquity.provider.webadmin.j.a(SourceFile:115) ~[Ubooquity.jar:1.10.1]
at com.ubooquity.c.a(SourceFile:324) ~[Ubooquity.jar:1.10.1]
at com.ubooquity.c.a(SourceFile:58) ~[Ubooquity.jar:1.10.1]
at com.ubooquity.c$1.a(SourceFile:133) ~[Ubooquity.jar:1.10.1]
at com.ubooquity.e.e.a(SourceFile:287) ~[Ubooquity.jar:1.10.1]
at com.ubooquity.e.e$f.a(SourceFile:830) ~[Ubooquity.jar:1.10.1]
at com.ubooquity.e.e$1$1.run(SourceFile:210) ~[Ubooquity.jar:1.10.1]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_121]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[na:1.8.0_121]
at java.lang.Thread.run(Thread.java:745) ~[na:1.8.0_121]
20170326 10:48:20 [pool-1-thread-2] ERROR com.ubooquity.Ubooquity - Uncaught exception on thread: pool-1-thread-2
java.lang.InternalError: null
at sun.security.ec.SunEC.initialize(Native Method) ~[sunec.jar:1.8.0_121]
at sun.security.ec.SunEC.access$000(SunEC.java:49) ~[sunec.jar:1.8.0_121]
at sun.security.ec.SunEC$1.run(SunEC.java:61) ~[sunec.jar:1.8.0_121]
at sun.security.ec.SunEC$1.run(SunEC.java:58) ~[sunec.jar:1.8.0_121]
at java.security.AccessController.doPrivileged(Native Method) ~[na:1.8.0_121]
at sun.security.ec.SunEC.<clinit>(SunEC.java:58) ~[sunec.jar:1.8.0_121]
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.8.0_121]
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:1.8.0_121]
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0_121]
at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[na:1.8.0_121]
at java.lang.Class.newInstance(Class.java:442) ~[na:1.8.0_121]
at sun.security.jca.ProviderConfig$2.run(ProviderConfig.java:221) ~[na:1.8.0_121]
at sun.security.jca.ProviderConfig$2.run(ProviderConfig.java:206) ~[na:1.8.0_121]
at java.security.AccessController.doPrivileged(Native Method) ~[na:1.8.0_121]
at sun.security.jca.ProviderConfig.doLoadProvider(ProviderConfig.java:206) ~[na:1.8.0_121]
at sun.security.jca.ProviderConfig.getProvider(ProviderConfig.java:187) ~[na:1.8.0_121]
at sun.security.jca.ProviderList.getProvider(ProviderList.java:233) ~[na:1.8.0_121]
at sun.security.jca.ProviderList$ServiceList.tryGet(ProviderList.java:434) ~[na:1.8.0_121]
at sun.security.jca.ProviderList$ServiceList.access$200(ProviderList.java:376) ~[na:1.8.0_121]
at sun.security.jca.ProviderList$ServiceList$1.hasNext(ProviderList.java:486) ~[na:1.8.0_121]
at javax.crypto.Mac.getInstance(Mac.java:174) ~[na:1.8.0_121]
at com.ubooquity.f.c.a(SourceFile:29) ~[Ubooquity.jar:1.10.1]
at com.ubooquity.provider.webadmin.j.a(SourceFile:600) ~[Ubooquity.jar:1.10.1]
at com.ubooquity.provider.webadmin.j.a(SourceFile:115) ~[Ubooquity.jar:1.10.1]
at com.ubooquity.c.a(SourceFile:324) ~[Ubooquity.jar:1.10.1]
at com.ubooquity.c.a(SourceFile:58) ~[Ubooquity.jar:1.10.1]
at com.ubooquity.c$1.a(SourceFile:133) ~[Ubooquity.jar:1.10.1]
at com.ubooquity.e.e.a(SourceFile:287) ~[Ubooquity.jar:1.10.1]
at com.ubooquity.e.e$f.a(SourceFile:830) ~[Ubooquity.jar:1.10.1]
at com.ubooquity.e.e$1$1.run(SourceFile:210) ~[Ubooquity.jar:1.10.1]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_121]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[na:1.8.0_121]
at java.lang.Thread.run(Thread.java:745) ~[na:1.8.0_121]

How to reproduce

Pull container:latest (24)
Set admin password
Log out admin
Attempt to log back in, gives error in Chrome

This page isn’t working

192.168.0.1 didn’t send any data.
ERR_EMPTY_RESPONSE

Fixed by rolling back to linuxserver/ubooquity:23

Thanks, team linuxserver.io

comics appears empty no matter what

nothing much to say : I tripled checked the path related to comics was ok, but it never worked :
opening a shell inside the container always shows /comics is empty.

no problem with /books

I ended up linking my host comics path to a new directory name, and adding this directory as a comics shared folder in ubooquity admin.

This way it works, but still...

No access to admin console - docker installation on Synology NAS

First of all, thank you for this Docker image.
Scan works fine and the comics are accessible through LocalipaddressNAS:2202/ubooquity/comics.
Admin console ("choose administrator password" screen) is accessible at LocalipaddressNAS:2203/ubooquity/admin.

Problem:
Remaining "stuck" at the entry of the admin console.
Meaning that it doesn't do anything when I submit a (newly choosen) administrator password. It just keeps loading and doesn't go further into the admin console, no matter how many and which passwords I try to set.
It seems that the "webadmin.cred" cannot be created, although I would not know what causes this.
Both the /config and the /comics folder are shared folders with SMB service enabled and the user (user1) has full read/write access.

Maybe it has to do with the location of the config folder?
I think I remember from an old install (not through Docker at that time) that the comics folder and the config folder had to be in the same shared folder.
But nothing is mentioned in your installation notes.

System data:
Synology DSM 7.0.1-42218 running
Docker version 20.10.3-1239 installed
Latest version of linuxserver/ubooquity from Dockerhub installed
Container install data:
Volume tab: 2 existing/created folders added: "docker/ubooquity" (Mount path: "/config") and "homes/user1/comics" (Mount path: "/comics").
Port Settings tab: 2 ports added. Local Port/Container Port/Type: 2202/2202/TCP and 2203/2203/TCP.
Environment tab: correct PGID and PUID added.

Unable to set Admin password.

After a clean install of the 79 tag (current latest) docker image, I am unable to set the admin password.

When attempting to set the password, the blue activity spinner is shown and then nothing happens no matter how long you wait. When the admin page is reloaded (done manually), the page to set the admin password is redisplayed. No errors are displayed either in the container or in the web browser.

I tried the 78 tag and was able to set the admin password with that. I then upgraded to the 79 tag again and everything else seems to work fine, so the issue seems to be limited to setting the admin password.

Host OS: CentOS 7.4.1708
Docker: 17.12.0-ce, build c97c6d6
Logs: dockerlog.txt

Unable to access WebGUI of Ubooquity docker

Hi all, I've set up unraid on my PC and I've had no issues with using Deluge Sonarr and Radarr for getting movies and TV shows. I wanted a docker for downloading comics and books, however, when I installed the Ubooquity docker and try to access the WebGUI I receive an error page saying "Unable to Connect".

This is the error log:

Invalid maximum heap size: -Xmxmaxmemm
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

Thank you!

[BUG] Could not find matching provider

Is there an existing issue for this?

  • I have searched the existing issues

Current Behavior

I install this using docker compose, but when going to the app I get the message below , I have searched here but I haven't seen a solution, any help would be good :)

HTTP ERROR 500

Problem accessing /. Reason:

Could not find matching provider (wrong URL)

Expected Behavior

I believe I should be able to see the application.

Steps To Reproduce

I installed the app using docker compose

Environment

- OS: Ubuntu server 22.04.4LTS
- How docker service was installed: Docker compose

CPU architecture

x86-64

Docker creation

---
version: "2.1"
services:
  ubooquity:
    image: lscr.io/linuxserver/ubooquity:latest
    container_name: ubooquity-2
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
      - MAXMEM=
    volumes:
      - /home/odin/appdata/3-media-nfs/ubooquity:/config
      #- /path/to/books:/books
      #- /path/to/comics:/comics
      #- /path/to/raw/files:/files
    ports:
      - 2204:2202
      - 2205:2203
    restart: unless-stopped

Container logs

[migrations] started
[migrations] no migrations found
───────────────────────────────────────
      ██╗     ███████╗██╗ ██████╗
      ██║     ██╔════╝██║██╔═══██╗
      ██║     ███████╗██║██║   ██║
      ██║     ╚════██║██║██║   ██║
      ███████╗███████║██║╚██████╔╝
      ╚══════╝╚══════╝╚═╝ ╚═════╝
   Brought to you by linuxserver.io
───────────────────────────────────────
To support LSIO projects visit:
https://www.linuxserver.io/donate/
───────────────────────────────────────
GID/UID
───────────────────────────────────────
User UID:    1000
User GID:    1000
───────────────────────────────────────
[custom-init] No custom files found, skipping...
20240221 15:53:45 [main] INFO  com.ubooquity.Ubooquity - Running with the following parameters - headless: true, libraryport: -1, adminport: -1, remoteadmin: true, host: 0.0.0.0, debug: false, execdir: /config
20240221 15:53:45 [main] INFO  com.ubooquity.Ubooquity - #############################
20240221 15:53:45 [main] INFO  com.ubooquity.Ubooquity - #     Starting Ubooquity    #
20240221 15:53:45 [main] INFO  com.ubooquity.Ubooquity - #############################
20240221 15:53:45 [main] INFO  com.ubooquity.Ubooquity - Java version: 17.0.10
20240221 15:53:45 [main] INFO  com.ubooquity.Ubooquity - Java vendor: Alpine
20240221 15:53:45 [main] INFO  com.ubooquity.Ubooquity - java vm name: OpenJDK 64-Bit Server VM
20240221 15:53:45 [main] INFO  com.ubooquity.Ubooquity - java runtime name: OpenJDK Runtime Environment
20240221 15:53:45 [main] INFO  com.ubooquity.Ubooquity - Max heap size available: 512 MB
20240221 15:53:45 [main] INFO  com.ubooquity.Ubooquity - OS name: Linux
20240221 15:53:45 [main] INFO  com.ubooquity.Ubooquity - OS version: 5.15.0-92-generic
20240221 15:53:45 [main] INFO  com.ubooquity.Ubooquity - OS architecture: amd64
20240221 15:53:45 [main] INFO  com.ubooquity.Ubooquity - Loading local version info
20240221 15:53:45 [main] INFO  com.ubooquity.Ubooquity - Ubooquity 2.1.2 built on 2018-10-14 at 12:58
20240221 15:53:45 [main] INFO  com.ubooquity.Ubooquity - Creating application folders
20240221 15:53:45 [main] INFO  com.ubooquity.Ubooquity - Loading preferences
20240221 15:53:45 [main] INFO  org.eclipse.jetty.util.log - Logging initialized @927ms to org.eclipse.jetty.util.log.Slf4jLog
20240221 15:53:45 [main] INFO  com.ubooquity.b - Starting internal server...
20240221 15:53:45 [main] INFO  com.ubooquity.b - Reverse proxy prefix: ubooquity
20240221 15:53:45 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Scanning books directories
20240221 15:53:45 [Scanner thread] WARN  com.ubooquity.data.database.a - Could not find id of root path /books (ignore this warning if you just added a new root directory)
20240221 15:53:45 [Scanner thread] WARN  com.ubooquity.data.database.a - Could not find id of root path /books (ignore this warning if you just added a new root directory)
20240221 15:53:45 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Finished scanning books directories, populating folders content cache
20240221 15:53:45 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Books folder content cache populated
20240221 15:53:45 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Scanning comics directories
20240221 15:53:45 [Scanner thread] WARN  com.ubooquity.data.database.c - Could not find id of root path /comics (ignore this warning if you just added a new root directory)
20240221 15:53:45 [Scanner thread] WARN  com.ubooquity.data.database.c - Could not find id of root path /comics (ignore this warning if you just added a new root directory)
20240221 15:53:45 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Finished scanning comics directories, populating folders content cache
20240221 15:53:45 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Comics folder content cache populated
20240221 15:53:45 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Comics statistics: [total: 0, added or updated: 0, removed: 0]
20240221 15:53:45 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Books statistics: [total: 0, added or updated: 0, removed: 0]
20240221 15:53:45 [main] INFO  org.eclipse.jetty.server.Server - jetty-9.4.0.v20161208
20240221 15:53:45 [main] INFO  o.e.j.server.handler.ContextHandler - Started o.e.j.s.h.ContextHandler@6622fc65{/,null,AVAILABLE,@admin}
20240221 15:53:45 [main] INFO  o.e.j.server.handler.ContextHandler - Started o.e.j.s.h.ContextHandler@299321e2{/,null,AVAILABLE,@library}
20240221 15:53:45 [main] INFO  o.e.jetty.server.AbstractConnector - Started library@319bc845{HTTP/1.1,[http/1.1]}{0.0.0.0:2202}
20240221 15:53:45 [main] INFO  o.e.jetty.server.AbstractConnector - Started admin@4c5474f5{HTTP/1.1,[http/1.1]}{0.0.0.0:2203}
20240221 15:53:45 [main] INFO  org.eclipse.jetty.server.Server - Started @1009ms
20240221 15:53:45 [main] INFO  com.ubooquity.b - Internal server started. Listening on port 2202 (library) and 2203 (admin)
Tyep Q then ENTER to exit
[ls.io-init] done.
20240221 15:53:46 [Timer-0] INFO  com.ubooquity.Ubooquity - Checking latest available Ubooquity version from website
20240221 15:53:46 [Timer-0] INFO  com.ubooquity.Ubooquity - Latest version available: 2.1.2 - Current version: 2.1.2

[BUG] Cannot access any content from home anymore

Is there an existing issue for this?

  • I have searched the existing issues

Current Behavior

I haven't used Ubooquity for a few months, but it was always running and getting updated by Watchtower on my server. yesterday I opened it and while I could reach the homepage, any content link like Books or Comics leads me to

HTTP ERROR 500
Problem accessing /ubooquity/comics/. Reason:

    Internal server error: Cannot invoke "java.util.List.iterator()" because "<parameter2>" is null
[Powered by Jetty:// 9.4.0.v20161208](http://eclipse.org/jetty)

Expected Behavior

It worked fine before, I expect to be able to browse my books and comics.

Steps To Reproduce

  1. Open Ubooquity
  2. Browse Comics or Books

Environment

- OS: Open Media Vault 6
- How docker service was installed: from OMV6

CPU architecture

x86-64

Docker creation

---
version: "2.1"
services:
  ubooquity:
    image: lscr.io/linuxserver/ubooquity:latest
    container_name: ubooquity
    environment:
      - PUID=998
      - PGID=100
      - TZ=Etc/UTC
      - MAXMEM=2048
    volumes:
      - /srv/dev-disk-by-uuid-5b67514d-485e-4306-873e-b1cbb54ccf99/Config/Ubooquity:/config
      - /srv/dev-disk-by-uuid-2628F1C228F19153/data/media/books:/books
      - /srv/dev-disk-by-uuid-2628F1C228F19153/data/media/comics:/comics
      # - /path/to/comics:/comics
      # - /path/to/raw/files:/files
    ports:
      - 2202:2202
      - 2203:2203
    restart: unless-stopped

Container logs

This is a snippet of what's repeating over and over for all comics and books. 

20240111 13:32:13 [Scanner thread] INFO  com.ubooquity.b.d - Reading metadata of comic file: /comics/Italia/- Magazines Comics/Corto Maltese/Corto Maltese 006 - Anno 02x03.cbz
20240111 13:32:13 [Scanner thread] INFO  com.ubooquity.data.database.c - Inserting/updating comic entry in database : /comics/Italia/- Magazines Comics/Corto Maltese/Corto Maltese 006 - Anno 02x03.cbz
20240111 13:32:17 [Scanner thread] INFO  com.ubooquity.b.d - Reading metadata of comic file: /comics/Italia/- Magazines Comics/Corto Maltese/Corto Maltese 020 - Anno 03x05.cbz
20240111 13:32:17 [Scanner thread] INFO  com.ubooquity.data.database.c - Inserting/updating comic entry in database : /comics/Italia/- Magazines Comics/Corto Maltese/Corto Maltese 020 - Anno 03x05.cbz
20240111 13:32:17 [Scanner thread] ERROR com.ubooquity.data.database.c - Error while creating/updating comic in database
org.h2.jdbc.JdbcSQLException: The database has been closed [90098-193]
	at org.h2.message.DbException.getJdbcSQLException(DbException.java:345) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.message.DbException.get(DbException.java:179) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.message.DbException.get(DbException.java:155) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.message.DbException.get(DbException.java:144) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.engine.Session.getTransaction(Session.java:1611) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.engine.Session.getStatementSavepoint(Session.java:1621) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.engine.Session.setSavepoint(Session.java:800) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.command.Command.executeUpdate(Command.java:252) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.jdbc.JdbcConnection.rollbackInternal(JdbcConnection.java:1515) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.jdbc.JdbcConnection.rollback(JdbcConnection.java:499) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.jdbcx.JdbcXAConnection.getConnection(JdbcXAConnection.java:104) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.jdbcx.JdbcConnectionPool.getConnectionNow(JdbcConnectionPool.java:227) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.jdbcx.JdbcConnectionPool.getConnection(JdbcConnectionPool.java:197) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at com.ubooquity.data.database.c.a(SourceFile:615) ~[Ubooquity.jar:2.1.2]
	at com.ubooquity.data.database.c.a(SourceFile:68) ~[Ubooquity.jar:2.1.2]
	at com.ubooquity.data.feeder.a.b(SourceFile:548) ~[Ubooquity.jar:2.1.2]
	at com.ubooquity.data.feeder.a.b(SourceFile:468) ~[Ubooquity.jar:2.1.2]
	at com.ubooquity.data.feeder.a.b(SourceFile:112) ~[Ubooquity.jar:2.1.2]
	at java.base/java.lang.Thread.run(Thread.java:840) ~[na:na]
20240111 13:32:17 [Scanner thread] INFO  com.ubooquity.b.d - Reading metadata of comic file: /comics/Italia/- Magazines Comics/Corto Maltese/Corto Maltese 034 - Anno 04x07.cbz
20240111 13:32:18 [Scanner thread] INFO  com.ubooquity.data.database.c - Inserting/updating comic entry in database : /comics/Italia/- Magazines Comics/Corto Maltese/Corto Maltese 034 - Anno 04x07.cbz
20240111 13:32:22 [Scanner thread] INFO  com.ubooquity.b.d - Reading metadata of comic file: /comics/Italia/- Magazines Comics/Corto Maltese/Corto Maltese 048 - Anno 05x09.cbz
20240111 13:32:23 [Scanner thread] INFO  com.ubooquity.data.database.c - Inserting/updating comic entry in database : /comics/Italia/- Magazines Comics/Corto Maltese/Corto Maltese 048 - Anno 05x09.cbz
20240111 13:32:23 [Scanner thread] ERROR com.ubooquity.data.database.c - Error while creating/updating comic in database
org.h2.jdbc.JdbcSQLException: The database has been closed [90098-193]
	at org.h2.message.DbException.getJdbcSQLException(DbException.java:345) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.message.DbException.get(DbException.java:179) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.message.DbException.get(DbException.java:155) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.message.DbException.get(DbException.java:144) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.engine.Session.getTransaction(Session.java:1611) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.engine.Session.getStatementSavepoint(Session.java:1621) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.engine.Session.setSavepoint(Session.java:800) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.command.Command.executeUpdate(Command.java:252) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.jdbc.JdbcConnection.rollbackInternal(JdbcConnection.java:1515) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.jdbc.JdbcConnection.rollback(JdbcConnection.java:499) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.jdbcx.JdbcXAConnection.getConnection(JdbcXAConnection.java:104) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.jdbcx.JdbcConnectionPool.getConnectionNow(JdbcConnectionPool.java:227) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at org.h2.jdbcx.JdbcConnectionPool.getConnection(JdbcConnectionPool.java:197) ~[h2-1.4.193.jar.215347347804627969.tmp:1.4.193]
	at com.ubooquity.data.database.c.a(SourceFile:615) ~[Ubooquity.jar:2.1.2]
	at com.ubooquity.data.database.c.a(SourceFile:68) ~[Ubooquity.jar:2.1.2]
	at com.ubooquity.data.feeder.a.b(SourceFile:548) ~[Ubooquity.jar:2.1.2]
	at com.ubooquity.data.feeder.a.b(SourceFile:468) ~[Ubooquity.jar:2.1.2]
	at com.ubooquity.data.feeder.a.b(SourceFile:112) ~[Ubooquity.jar:2.1.2]
	at java.base/java.lang.Thread.run(Thread.java:840) ~[na:na]

unable to set admin password

linuxserver.io

Arch Linux

INFO  com.ubooquity.Ubooquity - Running with the following parameters - headless: true, libraryport: -1, adminport: -1, remoteadmin: true, host: 0.0.0.0, debug: false, execdir: /config
20171203 17:39:20 [main] INFO  com.ubooquity.Ubooquity - #############################
20171203 17:39:20 [main] INFO  com.ubooquity.Ubooquity - #     Starting Ubooquity    #
20171203 17:39:20 [main] INFO  com.ubooquity.Ubooquity - #############################
20171203 17:39:20 [main] INFO  com.ubooquity.Ubooquity - Java version: 1.8.0_131
20171203 17:39:20 [main] INFO  com.ubooquity.Ubooquity - Java vendor: Oracle Corporation
20171203 17:39:20 [main] INFO  com.ubooquity.Ubooquity - Max heap size available: 455 MB
20171203 17:39:20 [main] INFO  com.ubooquity.Ubooquity - OS name: Linux
20171203 17:39:20 [main] INFO  com.ubooquity.Ubooquity - OS version: 4.13.12-1-ARCH
20171203 17:39:20 [main] INFO  com.ubooquity.Ubooquity - OS architecture: amd64
20171203 17:39:20 [main] INFO  com.ubooquity.Ubooquity - Loading local version info
20171203 17:39:20 [main] INFO  com.ubooquity.Ubooquity - Ubooquity 2.1.1 built on 2017-09-22 at 21:10
20171203 17:39:20 [main] INFO  com.ubooquity.Ubooquity - Creating application folders
20171203 17:39:20 [main] INFO  com.ubooquity.Ubooquity - Loading preferences
20171203 17:39:20 [main] INFO  org.eclipse.jetty.util.log - Logging initialized @1415ms to org.eclipse.jetty.util.log.Slf4jLog
20171203 17:39:20 [main] INFO  com.ubooquity.b - Starting internal server...
20171203 17:39:20 [main] WARN  com.ubooquity.data.database.c - Could not find id of root path /comics (ignore this warning if you just added a new root directory)
20171203 17:39:20 [main] INFO  com.ubooquity.b - Autoscan is disabled, manually launch or schedule a scan to scan your files
20171203 17:39:20 [main] INFO  com.ubooquity.b - Reverse proxy prefix is not activated
20171203 17:39:20 [main] INFO  org.eclipse.jetty.server.Server - jetty-9.4.0.v20161208
20171203 17:39:20 [main] INFO  o.e.j.server.handler.ContextHandler - Started o.e.j.s.h.ContextHandler@6d60fe40{/,null,AVAILABLE,@admin}
20171203 17:39:20 [main] INFO  o.e.j.server.handler.ContextHandler - Started o.e.j.s.h.ContextHandler@792b749c{/,null,AVAILABLE,@library}
20171203 17:39:20 [main] INFO  o.e.jetty.server.AbstractConnector - Started library@5965d37{HTTP/1.1,[http/1.1]}{0.0.0.0:2202}
20171203 17:39:20 [main] INFO  o.e.jetty.server.AbstractConnector - Started admin@7a5ceedd{HTTP/1.1,[http/1.1]}{0.0.0.0:2203}
20171203 17:39:20 [main] INFO  org.eclipse.jetty.server.Server - Started @1587ms
20171203 17:39:20 [main] INFO  com.ubooquity.b - Internal server started. Listening on port 2202 (library) and 2203 (admin)

Terraform Configuration

resource "docker_container" "ubooquity" {
  name  = "ubooquity"
  image = "${docker_image.ubooquity.latest}"

  restart = "unless-stopped"
  destroy_grace_seconds = 30
  must_run = true
  memory = 800

  volumes {
    host_path      = "/mnt/config/ubooquity"
    container_path = "/config"
  }

  volumes {
    host_path      = "/mnt/media/EBooks"
    container_path = "/books"
  }

  volumes {
    host_path      = "/mnt/media/EBooks"
    container_path = "/files"
  }

  volumes {
    host_path      = "/mnt/media/EBooks/Comics"
    container_path = "/comics"
  }

  ports {
    internal = 2203
    external = 2204
    ip       = "192.168.1.111"
  }

  labels {
    "traefik.enable" = "true"
    "traefik.admin.port" =  2203
    "traefik.read.port" = 2202
  }

  upload {
    content = "${file("${path.module}/conf/ubooquity.json")}"
    file    = "/config/preferences.json"
  }

  # lounge:tatooine
  env = [
    "PUID=1004",
    "PGID=1003",
    "MAXMEM=512"
  ]
}

Ubooquity Configuration

{
  "filesPaths": [
    {
      "pathString": "/files",
      "userName": []
    }
  ],
  "comicsPaths": [
    {
      "pathString": "/comics",
      "userName": []
    }
  ],
  "booksPaths": [
    {
      "pathString": "/books",
      "userName": []
    }
  ],
  "users": [],
  "isFilesProviderEnabled": true,
  "isComicsProviderEnabled": true,
  "isBooksProviderEnabled": true,
  "isUserManagementEnabled": true,
  "libraryPortNumber": 2202,
  "adminPortNumber": 2203,
  "comicWidth": 160,
  "comicHeight": 230,
  "comicsPaginationNumber": 30,
  "bookWidth": 160,
  "bookHeight": 230,
  "booksPaginationNumber": 30,
  "minimizeToTray": false,
  "minimizeOnStartup": false,
  "autoscanPeriod": 0,
  "isRemoteAdminEnabled": true,
  "theme": "default",
  "isShrinkingCacheEnabled": false,
  "shrunkPageWidth": 1536,
  "shrunkPageHeight": 2500,
  "shrinkingCachePath": "",
  "autoScanAtLaunch": false,
  "reverseProxyPrefix": "",
  "keystorePath": "",
  "keystorePassword": "",
  "isOpdsProviderEnabled": true,
  "folderExclusionPattern": "",
  "bypassSingleRootFolder": false,
  "enableFolderMetadataDisplay": false,
  "bookmarkUsingCookies": false,
  "displayTitleInsteadOfFileName": true,
  "keepUnreachableSharedFolders": false
}

Opening http://192.168.1.111:2204/admin/admin-res/cryptoparams serves me a signup page, which hangs upon submission on the following error:

angular.min.js:117 TypeError: Cannot read property 'length' of undefined
    at str2rstr_utf8 (sha256-min.js:10)
    at hex_hmac_sha256 (sha256-min.js:10)
    at password.js:18
    at angular.min.js:130
    at n.$eval (angular.min.js:144)
    at n.$digest (angular.min.js:142)
    at n.$apply (angular.min.js:145)
    at l (angular.min.js:97)
    at H (angular.min.js:101)
    at XMLHttpRequest.u.onload (angular.min.js:102)

The reason being that the call to fetch the salt for cryptoparams returns the login page itself:

image

I've been running ubooquity using the archlinux package and have not faced this issue there. I've tried using the reverseProxyPrefix setting, but it doesn't help.

Ubooquity not actually being started up in image.

Ubooquity doesn't actually appear to be launching once the container is stood up on top of this image.

I've had to manually go into the image and create a script based off of Ubooquities own startup shell script and manually start up the app.

Is this intended? Is there some config switch I'm missing?

I'm using Ansible to deploy using the docker container modules, all of your other images deploy fine with this method

hubcaps - % cat roles/ubooquity/tasks/main.yml

Setup Ubooquity

  • name: ubooq container
    docker_container:
    name: "ubooq"
    image: "linuxserver/ubooquity"
    state: "started"
    restart_policy: "always"
    volumes:
    • "{{ ubooq_config }}:/config"
    • "{{ host_media }}/books:/books"
    • "{{ host_media }}/comics:/comics"
    • "{{ ubooq_files }}:/files"
      ports:
    • '2202:2202'
      env:
      TZ: "{{ TZ }}"
      PUID: "{{ ubooq_user_id }}"
      PGID: "{{ ubooq_group_id }}"
      MAXMEM: "4096MB"
      log_driver: 'syslog'
      log_opt:
      tag: "ubooq"

Environment variable for proxy prefix

This might issue belong to Ubooquity more than this repo, please close if that is the case.

Would it be possible to be able to set the reverse proxy prefix (from Advanced tab in admin portal) via an environment variable?

High CPU load while apparently idle

linuxserver.io


Expected Behavior

While not being actively used or doing housekeeping (i.e. scanning etc) it should run with negligible CPU load like any other Docker container

Current Behavior

It runs with up to 100% of a full core:

Steps to Reproduce

  1. start the docker container any way you like.
  2. monitor logs, wait for all the initial housekeeping to complete
  3. start a cpu monitoring program like top
#  top -c -d10
top - 14:01:29 up 12:19,  1 user,  load average: 1.77, 1.25, 0.73
Tasks: 224 total,   1 running, 223 sleeping,   0 stopped,   0 zombie
%Cpu(s): 26.4 us,  0.4 sy,  0.0 ni, 73.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :    923.1 total,     39.1 free,    457.3 used,    426.7 buff/cache
MiB Swap:   1024.0 total,    767.4 free,    256.6 used.    405.5 avail Mem

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
31991 www-data  20   0  233740 161832   4228 S 101.8  17.1   6:39.19 java -Xmx128m -jar /app/ubooquity/Ubooquity.jar -+
 2875 927       20   0   44804  19056   1968 S   1.3   2.0   2:46.36 python3 -um app --host 0.0.0.0 --port 5000
 2157 root      20   0  893568   2784   1452 S   0.7   0.3   0:09.69 /usr/bin/containerd-shim-runc-v2 -namespace moby +
  596 root      20   0 1196032  29016   5928 S   0.6   3.1   8:40.88 /usr/sbin/dockerd -H fd://
  495 root      20   0  962964  13552   6132 S   0.3   1.4   5:24.70 /usr/bin/containerd
  372 root      20   0       0      0      0 I   0.2   0.0   0:00.07 [kworker/0:0-events_power_efficient]
 2063 root      20   0  902212   5452   3040 S   0.2   0.6   0:51.42 /usr/bin/containerd-shim-runc-v2 -namespace moby +
 2884 root      20   0  174488  21720   9196 S   0.2   2.3   3:00.55 /usr/local/bin/node /usr/src/app/dist/bin/server.+
    1 root      20   0   34004   4004   2612 S   0.1   0.4   1:40.88 /sbin/init
  480 root      20   0       0      0      0 I   0.1   0.0   0:00.02 [kworker/3:1-events_power_efficient]

CONTAINER ID   NAMES                       IMAGE                             STATUS
d7172854223f   ubooquity                   lscr.io/linuxserver/ubooquity     Up 18 minutes
67309610ca90   eufy                        bropat/eufy-security-ws           Up 12 hours
82a8db524e37   wireguard                   lscr.io/linuxserver/wireguard     Up 12 hours
d8b53e46c97a   samba                       dperson/samba                     Up 12 hours (healthy)
c2afa2c2620c   portainer                   portainer/portainer-ce            Up 12 hours
1d4bde13ab5d   transmission-openvpn        haugene/transmission-openvpn      Up 4 hours (healthy)
67a14dc1edfe   emby                        emby/embyserver_arm32v7:latest    Up About an hour
aa52c615a146   whoogle-search              benbusby/whoogle-search           Up 12 hours (healthy)
b6ea8cdf6942   nginx-proxy-manager_app_1   jc21/nginx-proxy-manager:latest   Up 12 hours
f0fd60807e24   nginx-proxy-manager_db_1    jc21/mariadb-aria:latest          Up 12 hours
dc39b22af94f   pihole                      pihole/pihole:latest              Up 12 hours (healthy)

I realize this is "only" a tiny RPI 3B+ with very limited resources but notice the number of containers running, yet none of them appear in the top-10 CPU consumers. All containers perform absolutely acceptably when used, even Emby when not having to transcode to a webapp.

Environment

OS: Raspbian GNU/Linux 11 (bullseye) armv7l
CPU architecture: BCM2835 (4) @ 1.400GHz ( Raspberry Pi 3 Model B Plus Rev 1.3)
How docker service was installed:

From official repo, as per standard RPI guidelines. (curl -fsSL https://get.docker.com -o get-docker.sh)

Command used to create docker container (run/create/compose/screenshot)

docker-compose.yml:

version: "2.1"
services:
  ubooquity:
    image: lscr.io/linuxserver/ubooquity
    container_name: ubooquity
    environment:
      - PUID=33
      - PGID=33
      - TZ=Europe/Brussels
      - MAXMEM=128
    volumes:
      - ./config:/config
      - /usb1/data/public/Etoons:/comics
    ports:
      - 2202:2202
      - 2203:2203
    restart: unless-stopped

Docker logs

ubooquity    | -------------------------------------
ubooquity    |           _         ()
ubooquity    |          | |  ___   _    __
ubooquity    |          | | / __| | |  /  \
ubooquity    |          | | \__ \ | | | () |
ubooquity    |          |_| |___/ |_|  \__/
ubooquity    |
ubooquity    |
ubooquity    | Brought to you by linuxserver.io
ubooquity    | -------------------------------------
ubooquity    |
ubooquity    | To support LSIO projects visit:
ubooquity    | https://www.linuxserver.io/donate/
ubooquity    | -------------------------------------
ubooquity    | GID/UID
ubooquity    | -------------------------------------
ubooquity    |
ubooquity    | User uid:    33
ubooquity    | User gid:    33
ubooquity    | -------------------------------------
ubooquity    |
ubooquity    | [cont-init.d] 10-adduser: exited 0.
ubooquity    | [cont-init.d] 30-config: executing...
ubooquity    | [cont-init.d] 30-config: exited 0.
ubooquity    | [cont-init.d] 90-custom-folders: executing...
ubooquity    | [cont-init.d] 90-custom-folders: exited 0.
ubooquity    | [cont-init.d] 99-custom-files: executing...
ubooquity    | [custom-init] no custom files found exiting...
ubooquity    | [cont-init.d] 99-custom-files: exited 0.
ubooquity    | [cont-init.d] done.
ubooquity    | [services.d] starting services
ubooquity    | [services.d] done.
ubooquity    | 20220507 13:55:02 [main] INFO  com.ubooquity.Ubooquity - Running with the following parameters - headless: true, libraryport: -1, adminport: -1, remoteadmin: true, host: 0.0.0.0, debug: false, execdir: /config
ubooquity    | 20220507 13:55:02 [main] INFO  com.ubooquity.Ubooquity - #############################
ubooquity    | 20220507 13:55:02 [main] INFO  com.ubooquity.Ubooquity - #     Starting Ubooquity    #
ubooquity    | 20220507 13:55:02 [main] INFO  com.ubooquity.Ubooquity - #############################
ubooquity    | 20220507 13:55:02 [main] INFO  com.ubooquity.Ubooquity - Java version: 1.8.0_275
ubooquity    | 20220507 13:55:02 [main] INFO  com.ubooquity.Ubooquity - Java vendor: IcedTea
ubooquity    | 20220507 13:55:02 [main] INFO  com.ubooquity.Ubooquity - java vm name: OpenJDK Zero VM
ubooquity    | 20220507 13:55:02 [main] INFO  com.ubooquity.Ubooquity - java runtime name: OpenJDK Runtime Environment
ubooquity    | 20220507 13:55:02 [main] INFO  com.ubooquity.Ubooquity - Max heap size available: 123 MB
ubooquity    | 20220507 13:55:02 [main] INFO  com.ubooquity.Ubooquity - OS name: Linux
ubooquity    | 20220507 13:55:02 [main] INFO  com.ubooquity.Ubooquity - OS version: 5.15.32-v7+
ubooquity    | 20220507 13:55:02 [main] INFO  com.ubooquity.Ubooquity - OS architecture: arm
ubooquity    | 20220507 13:55:02 [main] INFO  com.ubooquity.Ubooquity - Loading local version info
ubooquity    | 20220507 13:55:02 [main] INFO  com.ubooquity.Ubooquity - Ubooquity 2.1.2 built on 2018-10-14 at 12:58
ubooquity    | 20220507 13:55:02 [main] INFO  com.ubooquity.Ubooquity - Creating application folders
ubooquity    | 20220507 13:55:02 [main] INFO  com.ubooquity.Ubooquity - Loading preferences
ubooquity    | 20220507 13:55:08 [main] INFO  org.eclipse.jetty.util.log - Logging initialized @18234ms to org.eclipse.jetty.util.log.Slf4jLog
ubooquity    | 20220507 13:55:08 [main] INFO  com.ubooquity.b - Starting internal server...
ubooquity    | 20220507 13:55:08 [main] INFO  com.ubooquity.b - Reverse proxy prefix: ubooquity
ubooquity    | 20220507 13:55:08 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Scanning books directories
ubooquity    | 20220507 13:55:08 [Scanner thread] WARN  com.ubooquity.data.database.a - Could not find id of root path /books (ignore this warning if you just added a new root directory)
ubooquity    | 20220507 13:55:08 [Scanner thread] INFO  com.ubooquity.data.database.a - Inserting/updating book entry in database : /books
ubooquity    | 20220507 13:55:08 [Scanner thread] INFO  com.ubooquity.data.database.a - Found 1 empty folders
ubooquity    | 20220507 13:55:08 [Scanner thread] INFO  com.ubooquity.data.database.a - Deleted empty folders from database. Looking for new ones...
ubooquity    | 20220507 13:55:08 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Finished scanning books directories, populating folders content cache
ubooquity    | 20220507 13:55:08 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Books folder content cache populated
ubooquity    | 20220507 13:55:08 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Scanning comics directories
ubooquity    | 20220507 13:55:09 [main] INFO  org.eclipse.jetty.server.Server - jetty-9.4.0.v20161208
ubooquity    | 20220507 13:55:09 [main] INFO  o.e.j.server.handler.ContextHandler - Started o.e.j.s.h.ContextHandler@2c971f{/,null,AVAILABLE,@admin}
ubooquity    | 20220507 13:55:09 [main] INFO  o.e.j.server.handler.ContextHandler - Started o.e.j.s.h.ContextHandler@172e513{/,null,AVAILABLE,@library}
ubooquity    | 20220507 13:55:09 [main] INFO  o.e.jetty.server.AbstractConnector - Started library@19a307b{HTTP/1.1,[http/1.1]}{0.0.0.0:2202}
ubooquity    | 20220507 13:55:09 [main] INFO  o.e.jetty.server.AbstractConnector - Started admin@8448fa{HTTP/1.1,[http/1.1]}{0.0.0.0:2203}
ubooquity    | 20220507 13:55:09 [main] INFO  org.eclipse.jetty.server.Server - Started @19409ms
ubooquity    | 20220507 13:55:09 [main] INFO  com.ubooquity.b - Internal server started. Listening on port 2202 (library) and 2203 (admin)
ubooquity    | Tyep Q then ENTER to exit
ubooquity    | 20220507 13:55:10 [Timer-0] INFO  com.ubooquity.Ubooquity - Checking latest available Ubooquity version from website
ubooquity    | 20220507 13:55:12 [Scanner thread] INFO  com.ubooquity.b.d - Reading metadata of comic file: /comics/Science - 2021 12 24.pdf
ubooquity    | 20220507 13:55:12 [Scanner thread] INFO  com.ubooquity.fileformat.pdf.b - Reading metadata of pdf file: /comics/Science - 2021 12 24.pdf
ubooquity    | 20220507 13:55:14 [Timer-0] INFO  com.ubooquity.Ubooquity - Latest version available: 2.1.2 - Current version: 2.1.2

Heigh CPU load

I have a constant 2-6% CPU load when running this image compared to every other images from linuxserver/... I'm happy to help investigating this issue. Just let me know what kind of data might be useful.

[BUG] No internet when running docker compose

Is there an existing issue for this?

  • I have searched the existing issues

Current Behavior

Hi,
I work on rasperry PI 4 8gb, system is raspbian 64.
I have no internet while running docker-compose.

My docker-compose file:
--- version: "2.1" services: ubooquity: image: lscr.io/linuxserver/ubooquity:latest container_name: ubooquity environment: - PUID=1000 - PGID=1000 - TZ=Etc/UTC - MAXMEM=1024 volumes: - ./config:/config - /home/p/Calibre Library:/books - ./comics:/comics - ./files:/files ports: - 2202:2202 - 2203:2203 restart: unless-stopped

Visiting localhost:2022
`HTTP ERROR 500
Problem accessing /. Reason:

Could not find matching provider (wrong URL)

Powered by Jetty:// 9.4.0.v20161208`

Ping during launching docker:
ping 8.8.8.8 PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. 64 bytes from 8.8.8.8: icmp_seq=1 ttl=117 time=41.0 ms 64 bytes from 8.8.8.8: icmp_seq=2 ttl=117 time=36.8 ms From 192.168.4.134 icmp_seq=3 Destination Host Unreachable From 192.168.4.134 icmp_seq=4 Destination Host Unreachable From 192.168.4.134 icmp_seq=5 Destination Host Unreachable From 192.168.4.134 icmp_seq=6 Destination Host Unreachable From 192.168.4.134 icmp_seq=7 Destination Host Unreachable From 192.168.4.134 icmp_seq=8 Destination Host Unreachable

Yes 192.168.4.134 is my local address.

Expected Behavior

Well, it should work.

Steps To Reproduce

docker-compose up with file attached and current version of ubooquity just downloaded as a zip from this page

Environment

cat /proc/cpuinfo
processor	: 0
BogoMIPS	: 108.00
Features	: fp asimd evtstrm crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd08
CPU revision	: 3

processor	: 1
BogoMIPS	: 108.00
Features	: fp asimd evtstrm crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd08
CPU revision	: 3

processor	: 2
BogoMIPS	: 108.00
Features	: fp asimd evtstrm crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd08
CPU revision	: 3

processor	: 3
BogoMIPS	: 108.00
Features	: fp asimd evtstrm crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd08
CPU revision	: 3

Hardware	: BCM2835
Revision	: d03114
Serial		: 10000000a577367b
Model		: Raspberry Pi 4 Model B Rev 1.4


How docker sevice was installed: Do not remember, it was some time ago, other stuff is working well

CPU architecture

arm64

Docker creation

docker-compose up

Container logs

~/Ubooquity $ docker-compose up
Recreating ubooquity ... done
Attaching to ubooquity
ubooquity    | [migrations] started
ubooquity    | [migrations] no migrations found
ubooquity    | 
ubooquity    | -------------------------------------
ubooquity    |           _         ()
ubooquity    |          | |  ___   _    __
ubooquity    |          | | / __| | |  /  \
ubooquity    |          | | \__ \ | | | () |
ubooquity    |          |_| |___/ |_|  \__/
ubooquity    | 
ubooquity    | 
ubooquity    | Brought to you by linuxserver.io
ubooquity    | -------------------------------------
ubooquity    | 
ubooquity    | To support LSIO projects visit:
ubooquity    | https://www.linuxserver.io/donate/
ubooquity    | -------------------------------------
ubooquity    | GID/UID
ubooquity    | -------------------------------------
ubooquity    | 
ubooquity    | User uid:    1000
ubooquity    | User gid:    1000
ubooquity    | -------------------------------------
ubooquity    | 
ubooquity    | [custom-init] No custom files found, skipping...
ubooquity    | 20230226 09:20:48 [main] INFO  com.ubooquity.Ubooquity - Running with the following parameters - headless: true, libraryport: -1, adminport: -1, remoteadmin: true, host: 0.0.0.0, debug: false, execdir: /config
ubooquity    | 20230226 09:20:48 [main] INFO  com.ubooquity.Ubooquity - #############################
ubooquity    | 20230226 09:20:48 [main] INFO  com.ubooquity.Ubooquity - #     Starting Ubooquity    #
ubooquity    | 20230226 09:20:48 [main] INFO  com.ubooquity.Ubooquity - #############################
ubooquity    | 20230226 09:20:48 [main] INFO  com.ubooquity.Ubooquity - Java version: 1.8.0_345
ubooquity    | 20230226 09:20:48 [main] INFO  com.ubooquity.Ubooquity - Java vendor: IcedTea
ubooquity    | 20230226 09:20:48 [main] INFO  com.ubooquity.Ubooquity - java vm name: OpenJDK 64-Bit Server VM
ubooquity    | 20230226 09:20:48 [main] INFO  com.ubooquity.Ubooquity - java runtime name: OpenJDK Runtime Environment
ubooquity    | 20230226 09:20:48 [main] INFO  com.ubooquity.Ubooquity - Max heap size available: 910 MB
ubooquity    | 20230226 09:20:48 [main] INFO  com.ubooquity.Ubooquity - OS name: Linux
ubooquity    | 20230226 09:20:48 [main] INFO  com.ubooquity.Ubooquity - OS version: 5.15.84-v8+
ubooquity    | 20230226 09:20:48 [main] INFO  com.ubooquity.Ubooquity - OS architecture: aarch64
ubooquity    | 20230226 09:20:48 [main] INFO  com.ubooquity.Ubooquity - Loading local version info
ubooquity    | 20230226 09:20:48 [main] INFO  com.ubooquity.Ubooquity - Ubooquity 2.1.2 built on 2018-10-14 at 12:58
ubooquity    | 20230226 09:20:48 [main] INFO  com.ubooquity.Ubooquity - Creating application folders
ubooquity    | 20230226 09:20:48 [main] INFO  com.ubooquity.Ubooquity - Loading preferences
ubooquity    | 20230226 09:20:49 [main] INFO  org.eclipse.jetty.util.log - Logging initialized @3634ms to org.eclipse.jetty.util.log.Slf4jLog
ubooquity    | 20230226 09:20:49 [main] INFO  com.ubooquity.b - Starting internal server...
ubooquity    | 20230226 09:20:49 [main] INFO  com.ubooquity.b - Reverse proxy prefix: ubooquity
ubooquity    | 20230226 09:20:49 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Scanning books directories
ubooquity    | 20230226 09:20:50 [main] INFO  org.eclipse.jetty.server.Server - jetty-9.4.0.v20161208
ubooquity    | 20230226 09:20:50 [main] INFO  o.e.j.server.handler.ContextHandler - Started o.e.j.s.h.ContextHandler@302c971f{/,null,AVAILABLE,@admin}
ubooquity    | 20230226 09:20:50 [main] INFO  o.e.j.server.handler.ContextHandler - Started o.e.j.s.h.ContextHandler@1972e513{/,null,AVAILABLE,@library}
ubooquity    | 20230226 09:20:50 [main] INFO  o.e.jetty.server.AbstractConnector - Started library@324d5304{HTTP/1.1,[http/1.1]}{0.0.0.0:2202}
ubooquity    | 20230226 09:20:50 [main] INFO  o.e.jetty.server.AbstractConnector - Started admin@239a307b{HTTP/1.1,[http/1.1]}{0.0.0.0:2203}
ubooquity    | 20230226 09:20:50 [main] INFO  org.eclipse.jetty.server.Server - Started @4384ms
ubooquity    | 20230226 09:20:50 [main] INFO  com.ubooquity.b - Internal server started. Listening on port 2202 (library) and 2203 (admin)
ubooquity    | Tyep Q then ENTER to exit
ubooquity    | 20230226 09:20:50 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Finished scanning books directories, populating folders content cache
ubooquity    | [ls.io-init] done.
ubooquity    | 20230226 09:20:51 [Timer-0] INFO  com.ubooquity.Ubooquity - Checking latest available Ubooquity version from website
ubooquity    | 20230226 09:20:54 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Books folder content cache populated
ubooquity    | 20230226 09:20:54 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Scanning comics directories
ubooquity    | 20230226 09:20:54 [Scanner thread] WARN  com.ubooquity.data.database.c - Could not find id of root path /comics (ignore this warning if you just added a new root directory)
ubooquity    | 20230226 09:20:54 [Scanner thread] INFO  com.ubooquity.data.database.c - Inserting/updating comic entry in database : /comics
ubooquity    | 20230226 09:20:54 [Scanner thread] INFO  com.ubooquity.data.database.c - Found 1 empty folders
ubooquity    | 20230226 09:20:54 [Scanner thread] INFO  com.ubooquity.data.database.c - Deleted empty folders from database. Looking for new ones...
ubooquity    | 20230226 09:20:54 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Finished scanning comics directories, populating folders content cache
ubooquity    | 20230226 09:20:54 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Comics folder content cache populated
ubooquity    | 20230226 09:20:54 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Comics statistics: [total: 0, added or updated: 0, removed: 0]
ubooquity    | 20230226 09:20:54 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Books statistics: [total: 558, added or updated: 0, removed: 0]
ubooquity    | 20230226 09:20:56 [Timer-0] WARN  com.ubooquity.f.g - Could not get vendor info: java.net.UnknownHostException - vaemendis.net

[FEAT] HTTPS support

Is this a new feature request?

  • I have searched the existing issues

Wanted change

I see that ubooquity supports SSL encryption is it possible to add it to docker also please?

Reason for change

Otherwise requires a proxy to change from HTTPS to HTTP

Proposed code change

No response

Running reverse proxy, if I click "Comics" it takes me to my router

linuxserver.io

So I have Ubooquity running and it's mostly working properly, but when behind reverse proxy if I click "Comics" it takes me to my router. If I click "Latest Comics" that works perfectly. I noticed that if I browse to Ubooquity using localhost instead of reverse proxy and click "Comics" it takes me there as it should, and it appends "/comics/187724/" to the end of the URL. Over reverse proxy, if I hover over the "Comics" icon I can see that the url just shows "/comics/" at the end, so I assume that some mechanism that appends that number to the end is not working properly. Is there anything I can do to make this work over reverse proxy? Thanks!

Expected Behavior

When I go to "Comics" it should take me there.

Current Behavior

When I go to "Comics" it takes me to my router.

Environment

**OS:**Synology DSM 6
CPU architecture: x64
How docker service was installed:

from the linuxserver repo

Docker Healthcheck support

Describe the feature
Being able to see a "health status" of the Ubooquity Docker container or even better on all @linuxserver Docker containers.

Describe the solution you'd like
I would like support for the Docker Healthcheck (that is also shown in Portainer.io and probably other Docker management software).

Describe alternatives you've considered
Alternative is setting up something similarly without the use of the already existing tools within Docker.

Additional context
The Dockerfile could contain something like this:

HEALTHCHECK --interval=60s --timeout=10s --retries=3 CMD (curl -sS http://localhost:2202 && curl -sS http://localhost:2203) || exit 1.

For debugging and testing purposses you can use:

docker inspect --format "{{json .State.Health}}" containername

image

Ubooquity - won't detect books

Is there an existing issue for this?

  • I have searched the existing issues

Current Behavior

when i access the ubooquity webui my books are empty and a scan doesnt find anything.

Expected Behavior

ubooquity should detect my books on scan

Steps To Reproduce

I installed ubooquity through portainer
I set a bind for /books (the container folder) to /volume1/Books (where all my books are shared on the host).

Environment

- OS:Synology  DSM 7.2 (Model DSM 418)
- How docker service was installed:Portainer

CPU architecture

arm64

Docker creation

version: '3.8'
services:
  ubooquity:
    image: linuxserver/ubooquity:latest
    ports:
      - 2202:tcp
      - 2203:tcp
    environment:
      MAXMEM: '512'
      PUID: '1000'
      PGID: '1000'
      TZ: America/Chicago
    volumes:
      - ':/books'
      - ':/comics'
      - ':/config'

Container logs

20230813 22:37:55 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Books statistics: [total: 0, added or updated: 0, removed: 0]
20230813 22:37:55 [main] INFO  org.eclipse.jetty.server.Server - jetty-9.4.0.v20161208
20230813 22:37:55 [main] INFO  o.e.j.server.handler.ContextHandler - Started o.e.j.s.h.ContextHandler@6c4906d3{/,null,AVAILABLE,@admin}
20230813 22:37:55 [main] INFO  o.e.j.server.handler.ContextHandler - Started o.e.j.s.h.ContextHandler@65987993{/,null,AVAILABLE,@library}
20230813 22:37:55 [main] INFO  o.e.jetty.server.AbstractConnector - Started library@4b8d604b{HTTP/1.1,[http/1.1]}{0.0.0.0:2202}
20230813 22:37:55 [main] INFO  o.e.jetty.server.AbstractConnector - Started admin@5e7cd6cc{HTTP/1.1,[http/1.1]}{0.0.0.0:2203}
20230813 22:37:55 [main] INFO  org.eclipse.jetty.server.Server - Started @8154ms
20230813 22:37:55 [main] INFO  com.ubooquity.b - Internal server started. Listening on port 2202 (library) and 2203 (admin)
Tyep Q then ENTER to exit
[ls.io-init] done.
20230813 22:37:56 [Timer-0] INFO  com.ubooquity.Ubooquity - Checking latest available Ubooquity version from website
20230813 22:37:57 [Timer-0] INFO  com.ubooquity.Ubooquity - Latest version available: 2.1.2 - Current version: 2.1.2
20230813 22:38:41 [qtp2074820378-22] INFO  com.ubooquity.d.a - Admin cookie token invalid or too old. Access Denied. [ip:2600:1700:f02:7ec0:d1d8:174b:ba56:506]
20230813 22:38:48 [qtp2074820378-24] INFO  com.ubooquity.d.a - Admin cookie token invalid or too old. Access Denied. [ip:2600:1700:f02:7ec0:d1d8:174b:ba56:506]
20230813 22:38:52 [qtp2074820378-36] INFO  com.ubooquity.d.a - Admin cookie token invalid or too old. Access Denied. [ip:2600:1700:f02:7ec0:d1d8:174b:ba56:506]
20230813 22:38:52 [qtp2074820378-36] INFO  com.ubooquity.d.a - Admin successfully logged in
20230813 22:39:02 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Scanning books directories
20230813 22:39:02 [Scanner thread] WARN  com.ubooquity.data.database.a - Could not find id of root path /books (ignore this warning if you just added a new root directory)
20230813 22:39:02 [Scanner thread] INFO  com.ubooquity.data.database.a - Inserting/updating book entry in database : /books
20230813 22:39:02 [Scanner thread] ERROR com.ubooquity.data.feeder.a - Error while scanning shared book folders
java.lang.NullPointerException: null
	at java.util.Objects.requireNonNull(Objects.java:203) ~[na:1.8.0_372]
	at java.util.Arrays$ArrayList.<init>(Arrays.java:3813) ~[na:1.8.0_372]
	at java.util.Arrays.asList(Arrays.java:3800) ~[na:1.8.0_372]
	at com.ubooquity.data.feeder.a.a(SourceFile:297) [Ubooquity.jar:2.1.2]
	at com.ubooquity.data.feeder.a.b(SourceFile:105) [Ubooquity.jar:2.1.2]
	at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_372]
20230813 22:39:02 [Scanner thread] INFO  com.ubooquity.data.database.a - Found 1 empty folders
20230813 22:39:02 [Scanner thread] INFO  com.ubooquity.data.database.a - Deleted empty folders from database. Looking for new ones...
20230813 22:39:02 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Finished scanning books directories, populating folders content cache
20230813 22:39:02 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Books folder content cache populated
20230813 22:39:02 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Scanning comics directories
20230813 22:39:02 [Scanner thread] WARN  com.ubooquity.data.database.c - Could not find id of root path /comics (ignore this warning if you just added a new root directory)
20230813 22:39:02 [Scanner thread] INFO  com.ubooquity.data.database.c - Inserting/updating comic entry in database : /comics
20230813 22:39:02 [Scanner thread] ERROR com.ubooquity.data.feeder.a - Error while scanning comics shared directories
java.lang.NullPointerException: null
	at java.util.Objects.requireNonNull(Objects.java:203) ~[na:1.8.0_372]
	at java.util.Arrays$ArrayList.<init>(Arrays.java:3813) ~[na:1.8.0_372]
	at java.util.Arrays.asList(Arrays.java:3800) ~[na:1.8.0_372]
	at com.ubooquity.data.feeder.a.b(SourceFile:451) [Ubooquity.jar:2.1.2]
	at com.ubooquity.data.feeder.a.b(SourceFile:112) [Ubooquity.jar:2.1.2]
	at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_372]
20230813 22:39:02 [Scanner thread] INFO  com.ubooquity.data.database.c - Found 1 empty folders
20230813 22:39:02 [Scanner thread] INFO  com.ubooquity.data.database.c - Deleted empty folders from database. Looking for new ones...
20230813 22:39:02 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Finished scanning comics directories, populating folders content cache
20230813 22:39:02 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Comics folder content cache populated
20230813 22:39:02 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Comics statistics: [total: 0, added or updated: 0, removed: 0]
20230813 22:39:02 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Books statistics: [total: 0, added or updated: 0, removed: 0]
20230813 22:39:05 [Thread-23] INFO  com.ubooquity.provider.api.admin.a - Applying preferences modifications and restarting server
20230813 22:39:05 [Thread-23] INFO  com.ubooquity.b - Stopping internal server...
20230813 22:39:05 [Thread-23] INFO  com.ubooquity.data.feeder.a - Aborting content scan...
20230813 22:39:05 [Thread-23] INFO  com.ubooquity.data.feeder.a - Waiting for scanner thread to stop
20230813 22:39:05 [Thread-23] INFO  com.ubooquity.data.feeder.a - Scanner thread stopped
20230813 22:39:05 [Thread-23] INFO  o.e.jetty.server.AbstractConnector - Stopped library@4b8d604b{HTTP/1.1,[http/1.1]}{0.0.0.0:2202}
20230813 22:39:05 [Thread-23] INFO  o.e.jetty.server.AbstractConnector - Stopped admin@5e7cd6cc{HTTP/1.1,[http/1.1]}{0.0.0.0:2203}
20230813 22:39:05 [Thread-23] INFO  o.e.j.server.handler.ContextHandler - Stopped o.e.j.s.h.ContextHandler@65987993{/,null,UNAVAILABLE,@library}
20230813 22:39:05 [Thread-23] INFO  o.e.j.server.handler.ContextHandler - Stopped o.e.j.s.h.ContextHandler@6c4906d3{/,null,UNAVAILABLE,@admin}
20230813 22:39:05 [Thread-23] INFO  com.ubooquity.b - Internal server stopped
20230813 22:39:05 [Thread-23] INFO  com.ubooquity.Ubooquity - Saving preferences
20230813 22:39:05 [Thread-23] INFO  com.ubooquity.b - Starting internal server...
20230813 22:39:05 [Thread-23] INFO  com.ubooquity.b - Reverse proxy prefix: ubooquity
20230813 22:39:05 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Scanning books directories
20230813 22:39:05 [Thread-23] INFO  org.eclipse.jetty.server.Server - jetty-9.4.0.v20161208
20230813 22:39:05 [Scanner thread] WARN  com.ubooquity.data.database.a - Could not find id of root path /books (ignore this warning if you just added a new root directory)
20230813 22:39:05 [Scanner thread] INFO  com.ubooquity.data.database.a - Inserting/updating book entry in database : /books
20230813 22:39:05 [Thread-23] INFO  o.e.j.server.handler.ContextHandler - Started o.e.j.s.h.ContextHandler@5e314bd1{/,null,AVAILABLE,@admin}
20230813 22:39:05 [Thread-23] INFO  o.e.j.server.handler.ContextHandler - Started o.e.j.s.h.ContextHandler@6126ec2e{/,null,AVAILABLE,@library}
20230813 22:39:05 [Thread-23] INFO  o.e.jetty.server.AbstractConnector - Started library@28084303{HTTP/1.1,[http/1.1]}{0.0.0.0:2202}
20230813 22:39:05 [Scanner thread] ERROR com.ubooquity.data.feeder.a - Error while scanning shared book folders
java.lang.NullPointerException: null
	at java.util.Objects.requireNonNull(Objects.java:203) ~[na:1.8.0_372]
	at java.util.Arrays$ArrayList.<init>(Arrays.java:3813) ~[na:1.8.0_372]
	at java.util.Arrays.asList(Arrays.java:3800) ~[na:1.8.0_372]
	at com.ubooquity.data.feeder.a.a(SourceFile:297) [Ubooquity.jar:2.1.2]
	at com.ubooquity.data.feeder.a.b(SourceFile:105) [Ubooquity.jar:2.1.2]
	at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_372]
20230813 22:39:05 [Thread-23] INFO  o.e.jetty.server.AbstractConnector - Started admin@34de42fc{HTTP/1.1,[http/1.1]}{0.0.0.0:2203}
20230813 22:39:05 [Thread-23] INFO  org.eclipse.jetty.server.Server - Started @78251ms
20230813 22:39:05 [Thread-23] INFO  com.ubooquity.b - Internal server started. Listening on port 2202 (library) and 2203 (admin)
20230813 22:39:05 [Scanner thread] INFO  com.ubooquity.data.database.a - Found 1 empty folders
20230813 22:39:05 [Scanner thread] INFO  com.ubooquity.data.database.a - Deleted empty folders from database. Looking for new ones...
20230813 22:39:05 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Finished scanning books directories, populating folders content cache
20230813 22:39:05 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Books folder content cache populated
20230813 22:39:05 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Scanning comics directories
20230813 22:39:05 [Scanner thread] WARN  com.ubooquity.data.database.c - Could not find id of root path /comics (ignore this warning if you just added a new root directory)
20230813 22:39:05 [Scanner thread] INFO  com.ubooquity.data.database.c - Inserting/updating comic entry in database : /comics
20230813 22:39:05 [Scanner thread] ERROR com.ubooquity.data.feeder.a - Error while scanning comics shared directories
java.lang.NullPointerException: null
	at java.util.Objects.requireNonNull(Objects.java:203) ~[na:1.8.0_372]
	at java.util.Arrays$ArrayList.<init>(Arrays.java:3813) ~[na:1.8.0_372]
	at java.util.Arrays.asList(Arrays.java:3800) ~[na:1.8.0_372]
	at com.ubooquity.data.feeder.a.b(SourceFile:451) [Ubooquity.jar:2.1.2]
	at com.ubooquity.data.feeder.a.b(SourceFile:112) [Ubooquity.jar:2.1.2]
	at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_372]
20230813 22:39:05 [Scanner thread] INFO  com.ubooquity.data.database.c - Found 1 empty folders
20230813 22:39:05 [Scanner thread] INFO  com.ubooquity.data.database.c - Deleted empty folders from database. Looking for new ones...
20230813 22:39:05 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Finished scanning comics directories, populating folders content cache
20230813 22:39:05 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Comics folder content cache populated
20230813 22:39:05 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Comics statistics: [total: 0, added or updated: 0, removed: 0]
20230813 22:39:05 [Scanner thread] INFO  com.ubooquity.data.feeder.a - Books statistics: [total: 0, added or updated: 0, removed: 0]

Database persistency issues

Full disclosure, I might not be technical enough to properly describe what's going on. This is my perception of the effects of what I believe to be a bug.

It seems that the database isn't properly persisted when the container image is updated. I have Watchtower maintaining my image versions, and as long as it doesn't update Ubooquity, the database is properly maintained, with recent additions being tracked incrementally as expected. But as soon as the image gets updated, the scan scan starts other from scratch, as if the database hadn't existed before.

Scans fail immediately with null pointer exception

linuxserver.io


Expected Behavior

Scan should succeed.

Current Behavior

I get a null pointer error whenever the first entry is going to be inserted.

Untitled

Other than this, I can open both the admin and normal page, and things look fine, but obviously there is no content showing up.

Steps to Reproduce

Environment

OS: Synology DSM
CPU architecture: x86_64
How docker service was installed: NAS provided

Command used to create docker container (run/create/compose/screenshot)

Screen Shot 2020-12-28 at 1 51 06 PM

Docker logs

linuxserver-ubooquity1.html.zip

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.