前缀、文档修改记录
20260820 初始化编辑此文章,完稿
章节1、需求描述
这些年,大概陆续攒了1万本左右的PDF,电子书,平时管理也没有很细致,突发奇想,看能不能基于Docker环境下的BookLore来管理这些电子书,让“阅读”伟大again。
章节2、方案选择
先尝试使用BookLore进行图书管理的方案,因为我这里更多是PDF格式的文件,包括很多古籍PDF,看GPT提示的,这个可能更适合我的使用场景。
BookLore 官方目前推荐使用 Docker Compose 部署,默认是 BookLore + MariaDB 两个容器;BookLore 默认监听 6060 端口,官方要求至少约 2 GB RAM,推荐 4 GB+。
目录结构
root@server# mkdir -p /opt/booklore/{data,bookdrop}
root@server# mkdir -p /data/books
/opt/booklore/
├── data/ # BookLore自身数据、配置、缓存、元数据
├── bookdrop/ # 自动导入目录
└── docker-compose.yml
/data/books/ # 你的几万个PDF,真正的图书库
需要将 /app/data、/books、/bookdrop 分别持久化
章节3、 创建 Docker Compose配置文件
root@server# cd /opt/booklore
创建并编辑 docker-compose.yml , 其中的密码参数,根据你们自己的需要设置
services:
booklore:
image: ghcr.io/booklore-app/booklore:latest
container_name: booklore
environment:
- USER_ID=0
- GROUP_ID=0
- TZ=Asia/Shanghai
- DATABASE_URL=jdbc:mariadb://mariadb:3306/booklore
- DATABASE_USERNAME=booklore
- DATABASE_PASSWORD=请修改成你的数据库密码
- DISK_TYPE=LOCAL
- SWAGGER_ENABLED=false
depends_on:
mariadb:
condition: service_healthy
ports:
- "6060:6060"
volumes:
- /opt/booklore/data:/app/data
- /data/books:/books
- /opt/booklore/bookdrop:/bookdrop
restart: unless-stopped
healthcheck:
test: wget -q -O - http://localhost:6060/api/v1/healthcheck
interval: 60s
retries: 5
start_period: 60s
timeout: 10s
mariadb:
image: lscr.io/linuxserver/mariadb:11.4.8
container_name: booklore-mariadb
environment:
- PUID=1000
- PGID=1000
- TZ=Asia/Shanghai
- MYSQL_ROOT_PASSWORD=请修改成ROOT密码
- MYSQL_DATABASE=booklore
- MYSQL_USER=booklore
- MYSQL_PASSWORD=请修改成你的数据库密码
volumes:
- /opt/booklore/mariadb:/config
restart: unless-stopped
healthcheck:
test: ["CMD", "mariadb-admin", "ping", "-h", "localhost"]
interval: 5s
timeout: 5s
retries: 10
根据dockerhub上的BookLore 镜像和 MariaDB 镜像来构建的。
章节4、 启动docker compose
root@server# cd /opt/booklore root@server# docker pull ghcr.io/booklore-app/booklore:latest # 拉取所需镜像 root@server# docker compose pull # 拉取所需镜像 root@server# apt install -y docker-compose-plugin # 安装 Compose 插件 root@server# docker compose config # 检查配置有没有错误 root@server# docker compose up -d # 启动 root@server# docker compose ps -a # 查看状态 root@server# docker compose stop # 停止 root@server# docker compose down # 停止并删除容器
章节5、 浏览器访问登录
进入 Web 界面后进行首次管理员账号注册/初始化,全新安装,按页面提示创建管理员账号即可

附录1、视频操作演示
附录2、@Dasmz
博客内,所有教程为手打原创教程,如果技术教程对您有所帮助,欢迎打赏作者。技术层面,闻道有先后,如有疏漏、错误,欢迎指正。技术博客的内容,一般具有一定的环境依赖,具有一定的年代依赖,酌情参考其中的内容,请勿完全照搬照抄。
对于博客内已提及的专业知识,如果需要技术指导,欢迎联系我,仅需支付工时费
Twitter: Dasmz
Youtube: @DasmzStudio
Telegram: @Dasmz
