使用有声书架托管您自己的 Raspberry Pi 有声书库

阅读可以扩展思维,但有时,从口袋里掏出一本 600 页的巨著是不切实际的。 例如,在驾驶汽车时,您不能沉迷于经典散文。 这就是有声读物的用武之地,它为您提供叙述文学体验的好处,而无需您将视线从道路上移开。 借助有声读物,您可以在开车、洗碗甚至工作时阅读精彩的文学作品。

虽然有许多有声读物订阅服务可用,但在 Raspberry Pi 上创建和托管您自己的图书馆会更令人满意。

什么是有声书架?

Audiobookshelf 是一个自托管的有声读物和播客服务器。 这意味着您可以自己将其部署在 VPS(虚拟专用服务器)或您自己家中的硬件上,并通过互联网访问它,通过手机或专用应用程序流式传输和下载故事。

Raspberry Pi 非常适合这个项目。 您需要知道它的本地 IP 地址,还需要一个静态 IP 地址和一个域名。

如何在树莓派上安装有声书架

在 Raspberry Pi 上安装操作系统后,使用 SSH(安全外壳)连接到它。

ssh username@local.pi.ip.address

代替 用户名local.pi.ip.address 使用您自己的 Raspberry Pi 的详细信息。 现在按照以下步骤安装 Aurdiobookshelf。

  1. 更新和升级任何已安装的软件包:
    sudo apt update
    sudo apt upgrade
  2. 安装 Apache2 反向代理,以便您可以在家外访问 Audiobookshelf:
    sudo apt install apache2
  3. 还有 certbot,您稍后将使用它来生成安全密钥和证书以确保您的连接安全:
    sudo add-apt-repository ppa:certbot/certbot
    sudo apt update
    sudo apt-get install python3-certbot-apache
  4. Docker 是一种让开发人员可以为最终用户轻松构建、运行和更新软件包的方法:
    sudo apt install docker.io
  5. 将您的用户添加到 docker 组:
    sudo usermod -aG docker your_user_name
  6. 使用以下命令启动并启用 Docker:
    sudo systemctl start docker
    sudo systemctl enable docker
  7. Docker-compose 是一个让管理 Docker 容器更简单的工具:
    sudo apt install docker-compose
  8. 在您的主目录中,创建一个名为的新目录 有声书架, 然后 光盘 进入它,并创建另外四个目录:
    cd audiobookshelf
    mkdir audiobooks
    mkdir podcasts
    mkdir config
    mkdir metadata
  9. 返回主目录并创建一个新的 docker-compose 文件:
    cd ~
    nano docker-compose.yml

    并将以下内容粘贴到其中:

    version: '3.5'
    services:
    audiobookshelf:
    container_name: audiobookshelf
    image: ghcr.io/advplyr/audiobookshelf:latest
    environment:
    - AUDIOBOOKSHELF_UID=99
    - AUDIOBOOKSHELF_GID=100
    ports:
    - 13378:80
    volumes:
    - /home/your-user-name/audiobookshelf/audiobooks:/audiobooks
    - /home/your-user-name/audiobookshelf/podcasts:/podcasts
    - /home/your-user-name/audiobookshelf/config:/config
    - /home/your-user-name/audiobookshelf/metadata:/metadata

    您需要更改的唯一部分是目录的路径。 Save 并退出 nano Ctrl + O 然后 Ctrl + X.

  10. 命令:
    docker-compose pull

    会将所有必要的图像拉到您的 Pi 上,并且:

    docker-compose up -d

    将启动容器。 有声书架现在正在运行。

从家庭网络设置有声书架

现在可以从您的家庭网络中访问有声书架,但不能从更广泛的互联网访问。 最佳做法是在连接到 Internet 并获得 SSL 证书之前执行初始设置,因为不良行为者会查看证书日志以查看新站点何时上线,并且他们可能能够在此期间进行控制。

通过键入访问有声书架前端 你的.pi.ip.address:13378 进入任何浏览器。 系统将提示您设置 root 用户帐户和密码。

确保选择不易被猜到的强密码。 然后将提示您使用刚刚创建的凭据登录。

此时,有声书架会提示您 添加您的第一个库,并会要求您选择书籍或播客,为图书馆命名,然后浏览图书馆。 因为 Audiobookshelf 只能访问您指定的目录 码头工人-compose.yml,这个位置是 /有声读物. 选择此项,然后单击 创建新库.

Audiobookshelf 没有任何有声读物,因为此时您还没有添加任何有声读物。 在存储有声读物的计算机上,使用 PuTTY 或终端将您的图书馆转移到 Raspberry Pi 上的正确位置。

scp -r /path/to/your/audiobook/directory/* [email protected]:/home/your-user-name/audiobookshelf/audiobooks/

根据您收藏的大小,此过程可能需要几个小时。 完成并返回到提示符后,返回浏览器中的 Audiobookshelf 并点击绿色 扫描 按钮。

Audiobookshelf 现在将尝试使用包括 Apple、Audible 和 Google 在内的供应商来识别您的有声读物,以确定章节标记、作者、叙述者、概要以及这些书籍是否是系列的一部分。 完成后,您的图书馆将被填充、分类和搜索。

您将能够使用沿屏幕左边缘垂直排列的按钮在屏幕之间轻松导航。 分为几个部分,显示您当前正在阅读的内容、系列中的下一本书、最近添加的有声读物和最近添加的系列。 在最底部,有作者和叙述者的图像。 您可以点击这些查看盆栽传记。

其他屏幕包括 图书馆,它显示了您的每本书的单独封面 有声读物 目录; 系列; 收藏品; 和 作者. 所有这些都将准确显示您期望他们做什么。

要开始收听有声读物,请单击封面并按 . 有声书架会为您记住您的位置。

从家外访问有声书架

坐在家里壁炉前的扶手椅上听一本好的有声读物是一种愉快的体验,但您可能希望从家外访问您的叙述。 为此,您需要将对您的域名的请求定向到 Raspberry Pi 上的端口 13378。

  1. 在终端或 SSH 客户端中:
    cd /etc/apache2/sites-available
  2. 使用 nano 创建一个新文件:
    sudo nano audiobookshelf.conf
  3. Enter 以下:
    <VirtualHost *:80> ServerName your-domain-name.tld ProxyPreserveHost On ProxyPass / https://your.local.pi.ip.address:13378/ RewriteEngine on RewriteCond %{HTTP:Upgrade} websocket [NC] RewriteCond %{HTTP:Connection} upgrade [NC] RewriteRule ^/?(.*) "ws://your.local.pi.ip.address:13378/$1" [P,L] </VirtualHost> 

    您将需要更换 your.local.pi.ip.address 使用您的 Pi 的实际本地 IP 地址,以及 服务器名称 应该是您要使用的域名。 Save 并退出 nano Ctrl + O 然后 Ctrl + X.

  4. 使用以下命令启用新的 conf 文件:
    sudo a2ensite audiobookshelf.conf
  5. 重启 Apache2:
    sudo service apache2 restart
  6. 您的 Audiobookshelf 实例现在可以通过 HTTP 连接在 Internet 上访问。 这是不安全的,所以使用 certbot 从 Let’s Encrypt 获取证书和密钥:
    sudo certbot
  7. 从列表中选择您的域名并选择 重定向 当被问到时。
  8. 您将需要重新启动 Apache 再一次让更改生效。
    sudo service apache2 restart

    通过 HTTP 进行的任何连接尝试都将自动升级到 HTTPS,从而使您的连接更加安全。

您在哪里可以找到有声书架的书籍?

Audiobookshelf 可以即时传输所有音频格式,包括流行的 MP3、M4A 和 M4B 格式。 您可以在以下位置找到无 DRM 的有声读物 倾盆大雨LibriVox. 仔细的网络搜索将显示更多位置和独立零售商。

您已在 Raspberry Pi 上成功部署了自己的有声读物库!

您可以触手可及地访问整个叙述故事的世界。 为什么不从您的阅读习惯中扩展并从新的流派开始呢? 侦探故事、温馨的爱情故事和爆炸性的惊悚片都在那里等着你。 您甚至可以学习一门新语言并用另一种语言聆听您喜欢的旧语言。