Sign inSign up

vinser/flibgolite

By vinser

Updated 6 months ago

FLibGoLite is easy to use home library OPDS service you can install on your PC, NAS or server

Image
Web servers
0

4.5K

vinser/flibgolite repository overview

FLibGoLite - Just enough for free OPDS

FLibGoLite is an easy-to-install, fast and resource-friendly OPDS service.

Detailed multilingual guide is available here

FLibGoLite main features:

  • Works with books in FB2 (separate files and zip archives) and EPUB formats
  • Ability to convert FB2 format to EPUB when loading a book into the reader
  • Fast inexing and keep persistent data in SQLite database
  • High speed of processing new arrivals and saving the catalog in the SQLite database
  • Fast and responsive OPDS service with a simple localization
  • Well documented
Briefly how to use FLibGoLite.

You need:

  1. PC, NAS or server with Docker.
  2. A reader (device or application) that can work with OPDS catalogs and supports FB2 or EPUB book formats. FLibGoLite has been tested and works with mobile applications for reading books PocketBook Reader, FBReader, Librera Reader, Cool Reader, as well as desktop applications Foliate and Thorium Reader. You can use any other applications or devices that can read the listed book formats and work with OPDS catalogs.

If you want to install FLibGoLite on a NAS based on open solutions such as openmediavault, Unraid, TrueNAS SCALE, Rockstor or commercial Synology, QNAP, etc., you can use this docker container image. To run it, follow the documentation of your NAS. The parameters for running the container are given below in the docker_run.sh script.

Alternatively, you can run FLibGoLite in a docker container on your host (PC, server) with Windows, MacOS or Linux OS. To do this, the host must have Docker Desktop or Docker Engine installed.

Starting a docker container

To start the container, you need to create three folders:

  1. The folder where you will put the books
  2. The folder for the logs, where you can view information about the service's operation
  3. The folder for the SQLite database files

When starting the container, you must specify the paths to the created folders. If necessary, you can specify the desired listening port number in the launch command -p 8085:8085. After that, you can run the command to launch the container.

To perform the listed actions and launch the container, you can use the script docker_run.sh, which you can copy below

#!/usr/bin/env bash

# the script runs flibgolite docker container

# run this script from the root of the app folder

# put your books in the "books" folder
books_dir=$(pwd)/books
mkdir -p $books_dir

# here you can view logs
logs_dir=$(pwd)/logs
mkdir -p $logs_dir

# here is your books index database. Back up it if you want
dbdata_dir=$(pwd)/dbdata
mkdir -p $dbdata_dir

# run container and mount your folders
docker run -d \
--name=flibgolite \
-p 8085:8085 \
--mount type=bind,source=$books_dir,target=/flibgolite/books/stock \
--mount type=bind,source=$dbdata_dir,target=/flibgolite/dbdata \
--mount type=bind,source=$logs_dir,target=/flibgolite/logs \
vinser/flibgolite:latest
Using docker container

The script creates a books folder in the current directory. Place your books in FB2 format (zip-archives or separate files) or EPUB in this folder and they will be included in the OPDS catalog. The logs and SQLite database will be in the logs and dbdata folders, respectively.

Next, configure the reader(s) to work with the OPDS directory http://server:8085/opds,
where server is the name of your PC or the IP address of the PC type 192.168.0.10
After that, you can select and download any of the books stored on the PC in the reader.
Books can be selected/searched by author and genre, as well as contextual search by author and/or book title.
For book readers that do not support the FB2 format, books can be converted to EPUB format when downloaded to bookreader.

Thus, you will create a library that will be used by your loved ones with smartphones, reader devices or PCs.

If you do not make backups of the SQLite database, then if problems occur due to power outages or a host shutdown, you need to do the following to restore the database: stop the container, clear the dbdata folder and start the container again. This will not take much time.

Happy reading!


Suggestions, bug reports and comments are welcome here

Tag summary

Content type

Image

Digest

sha256:9b6e6cf97

Size

7.7 MB

Last updated

6 months ago

docker pull vinser/flibgolite