Decentralization? We're still early!

构建个人音乐系统,用自托管构筑自由的堡垒

A person holding a green card next to a plate of cookies

在当今数字时代,我们的音乐体验几乎被商业平台完全掌控。每次点击、每首歌曲、每个播放列表都被细致记录、分析并转化为商业利益。而我们——音乐的真正爱好者,却在不知不觉中成为了数据收集的对象。

本指南将帮助你构建一个完全私密、独立自主的个人音乐系统。我们将使用三个简单但强大的工具:Navidrome、mTube和FileBrowser,创建一个只对你负责的音乐环境。

一、为什么你需要自己的音乐系统

(一)商业平台的隐患

当我们使用Spotify、Apple Music等流媒体服务时,我们实际上放弃了对自己音乐体验的控制权。这些平台不断收集我们的数据,记录每一首播放的歌曲,分析我们的音乐口味,并利用这些信息推送广告或引导我们的消费行为。更令人担忧的是,我们在这些平台上并不真正”拥有”音乐,平台可以随时根据版权变化或其他原因移除内容,让我们失去心爱的歌曲。

此外,商业平台的算法决定了我们能听到什么,这种干预限制了真正的音乐探索。我们的音乐体验被预设的路径所控制,而不是由我们自己的好奇心和兴趣引导。更不用说,我们的音乐品味可以揭示情绪状态、生活习惯等私密信息,这些都成为了数据分析的对象。

(二)自托管系统的优势

构建自己的音乐系统,就像拥有一座数字时代的私人图书馆。你的音乐文件存储在你自己的设备上,不会因为订阅到期或平台政策变化而消失。没有第三方能够监控你的听歌习惯,你的音乐偏好保持完全私密,只有你自己知道你听了什么、何时听的、听了多少次。

自托管系统让你摆脱了网络连接、订阅状态或地区限制的束缚。无论是在家、在旅途中,还是在没有网络的地方,你都可以接触到完整的音乐库。最重要的是,你可以按照自己喜欢的方式组织音乐,创建个性化的分类和播放列表,而不是被迫适应平台预设的界面和分类方式。

二、系统组件介绍

(一)三大核心组件

我们的个人音乐系统由三个核心组件组成,它们各司其职却又紧密配合,共同打造一个完整的音乐生态。

Navidrome是这个系统的中枢,一个友好易用的音乐服务器。它提供了漂亮的网页播放界面,让你可以像使用商业流媒体服务一样浏览和播放音乐。Navidrome会自动扫描你的音乐库,整理专辑、艺术家信息,显示专辑封面和歌词等元数据。它还兼容Subsonic API,这意味着你可以使用各种手机应用远程访问你的音乐库,在任何设备上享受你的音乐收藏。

mTube是你获取新音乐的便捷工具。它提供了一个简单的界面,让你可以从YouTube等平台下载音乐内容。你只需复制视频链接,粘贴到mTube界面,选择下载格式和质量,然后等待下载完成。mTube会自动将下载的内容保存到共享的音乐目录中,使其立即可以通过Navidrome访问。这个过程简单直观,无需任何专业知识。

FileBrowser则是你的音乐图书管理员,一个直观的文件管理器。通过它,你可以浏览、上传、整理你的音乐文件,创建文件夹结构,重命名文件,或者从其他设备上传音乐到你的库中。它支持拖放操作,界面简洁明了,即使是技术新手也能轻松掌握。这个组件让你保持音乐库的整洁有序,提升整体使用体验。

(二)工作原理

这三个组件的巧妙之处在于它们共享同一个文件夹,形成了无缝的工作流。当你使用mTube下载音乐时,文件会直接保存到共享文件夹中。然后,你可以通过FileBrowser整理这些新下载的文件,将它们移动到适当的艺术家或专辑文件夹中。Navidrome会定期扫描这个文件夹,自动识别新添加或重组的音乐,更新它的数据库,使这些变化立即反映在播放界面上。

这种设计确保了整个音乐管理过程的流畅性和一致性。你可以轻松管理整个音乐生命周期,从获取到整理再到欣赏,全部在一个私密环境中完成。没有数据会离开你的系统,没有第三方能够介入这个过程,你拥有对自己音乐体验的完全控制权。

三、系统搭建步骤

(一)准备工作

开始构建自己的音乐系统前,你需要准备一些基本条件:

  1. 一台可以持续运行的电脑(家用PC、笔记本或家庭服务器)
  2. 安装了Docker和Docker Compose
  3. 稳定的本地网络连接

准备好这些后,我们就可以开始创建系统的基础结构了:

mkdir -p music-system/{music,config}
cd music-system

这将创建一个名为music-system的目录,并在其中创建music和config两个子目录。music目录将用于存储所有音乐文件,而config目录则保存Navidrome的配置信息。

(二)配置文件编写

有了基础目录结构后,下一步是创建Docker Compose配置文件:

touch docker-compose.yml

将以下内容复制到docker-compose.yml文件中:

version: "3.7"
services:
  navidrome:
    image: deluan/navidrome:latest
    container_name: navidrome
    restart: unless-stopped
    ports:
      - 4533:4533
    volumes:
      - ./music:/music
      - ./config:/config
    environment:
      ND_LOGLEVEL: info
  mtube:
    image: ghcr.io/alexta69/metube
    container_name: mtube
    restart: unless-stopped
    ports:
      - 8081:8081
    volumes:
      - ./music:/downloads # 挂载到共享目录
  filebrowser:
    image: filebrowser/filebrowser
    container_name: filebrowser
    volumes:
      - ./music:/srv # 同样挂载到共享目录
    ports:
      - 8000:80
    restart: unless-stopped
networks: {}

这个配置的关键在于三个服务共享同一个./music目录,只是在各自容器中挂载的路径不同。这就是实现共享存储的方式,允许三个服务协同工作。

(三)启动系统

配置文件准备好后,启动系统非常简单:

docker-compose up -d

这个命令会根据配置文件创建并启动所有服务。启动过程可能需要一些时间,特别是首次运行时需要下载所有Docker镜像。完成后,你可以使用以下命令检查服务状态:

docker-compose ps

如果所有服务显示”Up”状态,说明你的音乐系统已经成功启动了!

四、使用指南

(一)访问各个服务

现在你的系统已经运行起来了,可以通过以下地址访问各个服务:

  1. Navidrome音乐服务器http://localhost:4533
  2. mTube下载工具http://localhost:8081
  3. FileBrowser文件管理器http://localhost:8000

如果你是在另一台设备上访问,需要将”localhost”替换为运行服务的电脑IP地址。

(二)日常使用流程

有了这三个服务,你的日常音乐管理将变得非常流畅。首先是发现和下载音乐。当你在YouTube或其他平台找到喜欢的音乐时,复制其链接,然后打开mTube,粘贴链接到输入框。如果你只想要音频而不需要视频,可以选择”仅音频”选项,这样可以节省存储空间。点击下载按钮后,mTube会处理下载并保存文件到音乐目录。

下载完成后,你可能想要整理你的音乐库。打开FileBrowser,你会看到刚下载的文件。根据你的喜好,你可以创建文件夹结构来组织音乐。比如,你可以按照音乐风格(摇滚、古典、爵士)或者按艺术家名称创建文件夹。将下载的音乐文件移动到适当的文件夹中,必要时重命名文件以保持一致的命名风格。这一步看似繁琐,但它能让你的音乐库保持整洁有序,提升后续使用体验。

现在,是时候欣赏你的音乐了。打开Navidrome,你会发现它已经识别并索引了你的音乐文件。你可以浏览整个音乐库,按艺术家、专辑或流派浏览,或者使用搜索功能找到特定曲目。Navidrome还允许你创建播放列表,标记喜爱的歌曲,甚至可以根据你的听歌历史推荐音乐。在这个界面上,你可以像使用商业流媒体服务一样享受音乐,但一切都是在你控制之下的私人环境中。

(三)移动设备访问

Navidrome兼容多种移动应用,让你能够在移动设备上访问音乐库:

iOS推荐应用

  1. Play:Sub
  2. Amperfy
  3. Substreamer

Android推荐应用

  1. DSub
  2. Ultrasonic
  3. Subtracks

设置这些应用很简单。首先,你需要知道运行Navidrome服务的电脑在本地网络中的IP地址。打开应用后,在服务器设置中输入地址(如http://192.168.1.100:4533),然后使用你在Navidrome中创建的用户名和密码登录。连接成功后,你就可以在手机或平板电脑上浏览和播放你的整个音乐库了。

五、隐私保护与安全措施

(一)基本隐私保障

我们构建的这个系统提供了出色的隐私保护,主要体现在系统的本地性质上。默认情况下,所有服务都只在本地网络中可访问,不会暴露到互联网上。这意味着没有外部实体能够监控或跟踪你的音乐活动。你的听歌记录、偏好设置和播放历史都安全地存储在你的设备上,不会被上传到任何云服务或第三方服务器。

这种本地化的数据管理方式确保了你对个人信息的完全控制。你可以自由决定保留哪些数据,何时删除数据,以及如何使用这些数据。与商业平台不同,这里没有广告网络在分析你的行为,没有算法在预测你的偏好,也没有数据经纪人在利用你的个人信息。你的音乐体验是真正私密和个人的。

(二)新手友好的安全措施

尽管我们的系统默认已经相当安全,但采取一些额外的措施可以进一步增强安全性:

  1. 设置强密码:为所有三个服务设置不同且强力的密码
  2. 定期备份:使用简单命令备份配置目录
   # 简单备份命令
   cp -r config backup_config
  1. 系统更新:定期更新容器镜像获取安全修复
   docker-compose pull
   docker-compose up -d

这些基本的安全措施可以有效保护你的系统和数据,即使是技术新手也能轻松执行。

六、常见问题解答

(一)技术问题

使用过程中,你可能会遇到一些技术问题:

  1. “无法连接到服务”
    可能的原因:Docker未运行,容器停止,或端口冲突
    解决方法:检查Docker状态,运行docker-compose ps确认容器状态,必要时重启服务
  2. “Navidrome没有显示我的音乐”
    可能的原因:文件位置错误,不支持的格式,或需要触发扫描
    解决方法:确认文件在正确位置,检查格式,在Navidrome设置中手动触发扫描
  3. “mTube下载失败”
    可能的原因:网络问题,链接失效,或视频限制
    解决方法:检查网络连接,确认链接有效,或尝试不同的视频源

(二)使用建议

为了获得最佳体验,我们有一些使用建议:

在音乐库组织方面,建立一致的文件夹结构非常重要。常见的做法是按”艺术家/专辑/歌曲”的层次结构组织文件,这样可以让Navidrome更准确地识别和分类你的音乐。使用有意义的文件名也能提升浏览体验,比如包含曲目编号、歌曲名称和艺术家信息。

考虑到设备兼容性,MP3格式是最安全的选择,几乎所有设备都支持它。如果你追求更高的音质且不介意更大的文件体积,FLAC是一个很好的无损格式选择。不过,并非所有设备都能高效播放FLAC文件,特别是一些较旧的移动设备。最好在不同设备上测试不同格式的播放效果,找到适合你需求的平衡点。

七、群晖NAS与自托管方案对比

近年来,群晖NAS(Network Attached Storage)成为了家庭音乐存储的流行选择。那么,群晖NAS与我们刚刚讨论的自托管Docker方案相比,各有什么优缺点呢?

(一)群晖NAS的优势

群晖NAS是一种专用的网络存储设备,为多媒体管理提供了一系列优势:

  1. 一体化解决方案:群晖提供了完整的硬件和软件套件,包括Audio Station应用,无需自行配置Docker和服务。对于不熟悉命令行的用户,这是一个显著优势。
  2. 用户友好界面:群晖的DSM操作系统提供了图形化界面,让新手也能轻松管理。所有操作都可以通过点击完成,无需编写配置文件。
  3. 多功能性:除了音乐,群晖NAS还能管理照片、视频、文档等各种数据,是一个全方位的家庭存储解决方案。
  4. 硬件可靠性:群晖设备通常配备RAID功能,提供数据冗余保护,降低硬盘故障导致数据丢失的风险。
  5. 低功耗:相比于保持PC或服务器运行,NAS设备通常更加节能,适合24/7运行。

(二)自托管Docker方案的优势

我们介绍的Docker自托管方案则提供了不同的优势:

  1. 完全控制:你可以精确控制每个组件的配置和行为,根据自己的需求定制系统。如果默认设置不符合你的喜好,可以轻松修改。
  2. 成本效益:利用现有硬件(如旧电脑或树莓派)运行Docker,避免购买专门的NAS设备,节省了初始投资。
  3. 组件灵活性:可以自由选择和更换各个组件。不喜欢我们推荐的某个工具?可以轻松替换为其他类似功能的软件。
  4. 学习价值:设置和维护Docker服务是一项有用的技能,在许多IT领域都有应用。这个项目可以作为学习Docker的实践机会。
  5. 开源生态:我们推荐的所有组件都是开源的,这意味着它们由社区驱动,通常比专有软件更透明、更尊重用户隐私。

(三)选择建议

如何在这两种方案之间做出选择?以下是一些考虑因素:

  1. 技术水平:如果你是技术爱好者,喜欢动手配置和优化,Docker方案可能更有吸引力。如果你希望”即插即用”,群晖NAS可能更适合。
  2. 预算考虑:入门级群晖NAS起价约200-300美元,还不包括硬盘。如果预算有限,利用现有硬件运行Docker是更经济的选择。
  3. 存储需求:如果你有大量数据(不仅是音乐),需要集中存储和管理,群晖NAS的全方位功能可能更有价值。
  4. 长期规划:考虑未来扩展性。Docker方案可以从小规模开始,随着需求增长逐步扩展。群晖则需要在初始购买时考虑未来的存储需求。
  5. 隐私关注点:两种方案都保持数据在本地,但开源Docker解决方案在透明度方面可能有优势,如果隐私是首要考虑因素,这一点很重要。

(四)混合方案

值得一提的是,这两种方案并非互斥。很多群晖用户在其NAS上运行Docker容器,结合了两种方案的优势。群晖DSM支持Docker,这意味着你可以在群晖NAS上安装我们推荐的Navidrome、mTube和FileBrowser,享受专业存储硬件的同时保持软件选择的灵活性。

对于刚开始探索个人音乐系统的用户,我建议从Docker方案开始,因为它投资更少,学习价值更高。随着需求的增长和经验的积累,你可以稍后决定是否值得投资一个专用的NAS系统。

无论选择哪种方案,最重要的是你重获了对音乐体验的控制权,脱离了商业平台的束缚和监控。

八、总结

通过这个简单而强大的系统,你已经成功创建了一个完全私密、个人掌控的音乐环境。不再受限于商业平台的条款和条件,不再担心隐私泄露,你现在可以真正自由地探索和享受音乐世界。你的听歌习惯、收藏和偏好都只属于你自己,不会被用来投放广告或构建用户档案。

这个系统的美妙之处在于它的简单性和灵活性。初学者能够轻松上手,只需按照基本步骤设置和使用。同时,有经验的用户可以根据自己的需求进行调整和扩展,添加更多功能或优化现有设置。不论你是因为隐私考虑、音乐收藏需求,还是单纯享受DIY的乐趣,这个系统都能满足你的期望。

现在,播放你最喜爱的歌曲,享受这份只属于你的音乐自由吧!在这个个人音乐堡垒中,你是唯一的听众,也是唯一的主人。

作为非营利站点,基地的建设离不开大家的捐助支持。在Cardano钱包(如Lace、Eternl 等)中输入 ADA Handle 名称$brave2049,即可为基地提供小额捐助。为支持Cardano治理和基地建设,亦欢迎将Cardano链上治理权限委托给Brave(Brave的Cardano链上治理DRep信息)

相關文章

监视资本主义:智能陷阱中的隐秘枷锁

这是一个人人都被裹挟其中的时代——算法主导了我们的信息获取,数据成了新的财富,而我们,却成了被精准剖析、操控和商品化的对象。数字时代所带来的信息茧房让我们以为自己自由地选择,却在不知不觉中滑向了一种无间地狱般的循环困境。

回复