TaleBook 部署教程
本教程基于 Ubuntu 24.04 服务器部署 TaleBook 过程整理,包含全程操作步骤、常见报错及解决方案,适配新手,所有命令可直接复制执行。
一、部署tablebook
创建tablebook部署位置的文件夹,并进入这个文件夹
1 | mkdir -p ~/talebook && cd ~/talebook |
通过 SSH 连接服务器后,尝试下载 TaleBook 官方 docker-compose.yml 文件
1 | wget https://raw.githubusercontent.com/talebook/talebook/master/docker-compose.yml |
使用国内 1ms.run 镜像加速服务,替换 docker-compose.yml 中的镜像地址,这里我使用的是8456端口:
1 | cat > docker-compose.yml << 'EOF' |
重新启动:docker compose up -d,镜像成功拉取,容器启动。
开启Ubuntu服务器端口8456端口(自己手动去宝塔面板放开这个端口也可以的)
1 | # 1. 放行TCP 8456端口 |
二、部署后访问
重复提示创建账户
访问 http://192.168.3.96:8456 时,第一次进入提示创建账户。
但我创建了账户后,重新进入,仍然提示我未创建账户。
原因:TaleBook 已完成初始化,生成 install.lock 锁定文件,浏览器缓存导致无法跳转登录页。
解决:直接访问登录页 http://192.168.3.96:8456/login,使用初始化时设置的管理员账号密码登录;若仍异常,清除浏览器缓存或重启容器。
Samba 挂载服务器文件夹到本地
Samba挺好用的(Windows 原生支持,稳定性高)
服务器端配置 Samba
我的服务器用户名称:risespark
我的tablebook在服务器的书籍目录:/mnt/1T-disk/talebook/data/books/library

在宝塔面板中,查看该docker的数据卷目录
服务器端(Linux)执行代码
1 | # 1、安装 samba |
1 | # 2、给当前用户risespark设置 samba 密码(记好,Windows 挂载时使用) |
1 |
1 | # 3、编辑Samba配置文件,注意[bookshare]是你将来挂在到Windows电脑上的名称(这个是自己起的名),path是在服务器上tablebook的文件目录 |
1 | # 4、重启 samba 服务并设置开机自启 |
给 tablebooks 目录授权(关键!否则容易出现报错访问目标文件夹被拒绝)
1 | sudo chown -R risespark:risespark /mnt/1T-disk/talebook/data/books/library |
Windows 端挂载操作
- 打开「此电脑」,新建 → 映射网络驱动器;

映射网络驱动器
驱动器选择 Z:,文件夹输入:
\\192.168.3.96\bookshare; 这个bookshare就是刚刚代码中自己起的名勾选「登录时重新连接」,点击完成;
输入用户名
risespark和刚才设置的 Samba 密码,即可完成挂载。✅ 成功后你的电脑会多出一个 Z 盘,这个 Z 盘 = 服务器
/mnt/1T-disk/talebook/data/books/library,即代码中path对应的路径。

刚刚建立的盘符
若遇到目标文件夹访问被拒绝,

问题:目标文件夹访问被拒绝
请执行以下代码,给予权限即可:
1 | sudo chown -R risespark:risespark /mnt/1T-disk/talebook/data/books/library |
Calibre 管理数据
打开 Calibre → 书库位置选择 **Z:**,即你刚刚新建的网络驱动器对应的盘符。
以后:
在 Calibre 里改书名、封面、格式
直接改到服务器文件
不用传文件
改完只需要在命令行中手动运行(即重启 tablebook的docker),即可在网页中看到刚刚的修改了:
1
sudo docker restart talebook
若你懒得每次手动重启,想服务器自己智能重启,即TaleBook 书籍目录新增 / 删除书籍后,需重启容器才能刷新书库
创建智能检测重启脚本
1. 脚本功能
- 每 12 小时检测书籍目录文件变化
- 有变化:自动重启 talebook 并记录状态
- 无变化:不重启,仅输出日志
- 宝塔面板可查看完整执行过程
2. 宝塔计划任务配置
- 宝塔 → 计划任务 → 添加任务
- 任务类型:Shell 脚本
- 任务名称:TaleBook 书籍变化检测重启
- 执行周期:自定义 →
0 */12 * * *(每 12 小时执行一次) - 脚本内容:
1 | !/bin/bash |
3.使用说明
自动执行:每天 0:00、12:00 自动检测目录变化
手动执行:宝塔计划任务 → 执行,逻辑与自动执行完全一致
日志说明
- 无变化:
书籍目录无变化 → 不重启 - 有变化:
检测到书籍目录有变化 → 开始重启 TaleBook
- 无变化:
资源消耗:docker 重启耗时 1~3 秒,资源占用极低,无频繁重启损耗




