Booklore

BookLore is a self-hosted web app for organizing and managing your personal book collection. It provides an intuitive interface to browse, read, and track your progress across PDFs and eBooks. With robust metadata management, multi-user support, and a sleek, modern UI, BookLore makes it easy to build and explore your personal library. In this step by step guide I will show you how to install BookLore on your Synology NAS using container manager.

Step 1

Install container manager, If you have already installed the manager jump to step 3

Select Main menu or the Package Center shortcut

Step 2

Type in Container in the Search bar and Press enter on your keyboard. Then you will See Container manager like below. in my case i have installed the Container manager already. Select install, wait a few second and then select open.

Step 3

Now you have selected open you should see a screen like below and The Manager will say Running in green. Select open and move on to the next step.

Step 4

Now you will be Presented with the below. This is the Container manager over view of all your Containers and what’s happening in real time.

Step 5

Now We need to Create a Project for Booklore.

This project will do a number of things. download the image and setup the Project to Run all in one go.

Select project from the menu down the side and then select Create button

Step 6

before we go any thurther we need to ensure we have our folders setup ready for the project.

I have a main folder on the Synology system just for docker projects. create the following folders using filestation so my path for Booklore will look like this

  • bookdrop
  • books
  • data
  • db

Step 7

now we have created the folders needed for the project we can go ahead and create the project in Container manager

Give the project a name, change source to Create docker-compose.yml and add the path. Project name is all lower case.

See below for before and after the code you will need is below also.

the volume path needs tobe exact or the project will return a fail. like above i missed out projects folder so i got a error and had to trouble shoot.


services:
  mariadb:
    image: mariadb:11.8-noble #LTS Long Time Support Until October 15, 2033.
    container_name: BookLore-DB
    security_opt:
      - no-new-privileges:false
    environment:
      MARIADB_DATABASE: booklore
      MARIADB_USER: bookloreuser
      MARIADB_PASSWORD: booklorepass
      MARIADB_ROOT_PASSWORD: rootpass
      TZ: Europe/London
    volumes:
      - /volume1/docker/booklore/db:/var/lib/mysql:rw
    restart: on-failure:5
    
  booklore:
    image: ghcr.io/the-booklore/booklore:latest
    container_name: BookLore
    healthcheck:
      test: ["CMD-SHELL", "nc -z 127.0.0.1 6060 || exit 1"]
      interval: 10s
      timeout: 5s
      retries: 3
      start_period: 90s
    environment:
      USER_ID: 1026
      GROUP_ID: 100
      TZ: Europe/London
      DATABASE_URL: jdbc:mariadb://mariadb:3306/booklore #Or jdbc:mariadb://booklore-db:3306/booklore if you Experience Connection Issues.
      DATABASE_USERNAME: bookloreuser
      DATABASE_PASSWORD: booklorepass
    depends_on:
      mariadb:
        condition: service_started
    ports:
      - 6060:6060
    volumes:
      - /volume1/docker/projects/booklore/data:/app/data:rw
      - /volume1/docker/projects/booklore/books:/books:rw
      - /volume1/docker/projects/booklore/bookdrop:/bookdrop:rw #Files inside the bookdrop folder are automatically detected.
    restart: on-failure:10

press next when you are happy with the code

Step 8

setup a web portal if you like . I would not advise it. and press next

Step 9

Thats it for this section, time to create the project.

Select Done

Step 10

If you have a Exit Code of 0 like i have below then you are done. project created. if you have a Exit code 1 you have a error and need to visit the code again and trouble shoot.

Like i mentioned above. I Missed out Project folder, I added it in the container and it worked. see code and build complete below.

Step 11

One last thing you can check to see if the docker is Green and showing no Errors, todo that just goto Container manager and on the left select Projects and ntop will be there Status Colum should be green if not you will need to trouble shoot.

Step 12

now booklore is running you are going to need to create a user and password head over to https://your ip:6060 this will give you the welcome screen

Step 13

Soon as you have have filled in your details select Create admin account

Step 14

now you can sign in with your details you have just entered for admin login

Step 15

Now we are successfully signed in