收起左侧

颜值爆表的私人音乐库!一键在 NAS 上快速部署「道理鱼音乐」

3
回复
228
查看
[ 复制链接 ]

105

主题

11

回帖

0

牛值

fnOS系统内测组

fnOS1.0上线纪念勋章社区上线纪念勋章

daoliyu:

一套自部署的多媒体管理与播放方案,强调高音质、快速转码和便捷的前后端体验。支持多种音频/视频格式,适配个人与私有部署场景。

安装

Docker Compose

services:
  postgres:
    image: postgres:16-alpine
    restart: unless-stopped
    environment:
      POSTGRES_DB: "daoliyu"
      POSTGRES_USER: "daoliyu"
      POSTGRES_PASSWORD: "daoliyupassword"
      PGDATA: "/var/lib/postgresql/data/pgdata"
    command:
      - "postgres"
      - "-c"
      - "max_connections=200"
      - "-c"
      - "shared_buffers=256MB"
      - "-c"
      - "work_mem=32MB"
      - "-c"
      - "maintenance_work_mem=256MB"
      - "-c"
      - "checkpoint_completion_target=0.9"
      - "-c"
      - "wal_buffers=16MB"
      - "-c"
      - "port=5433"
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U daoliyu -d daoliyu -p 5433"]
      interval: 10s
      timeout: 5s
      retries: 6
      start_period: 30s
    ports:
      - "5433:5433"
    volumes:
      - ./postgres:/var/lib/postgresql/data

  redis:
    image: redis:7-alpine
    restart: unless-stopped
    depends_on:
      postgres:
        condition: service_started
    command: ["redis-server", "--appendonly", "yes"]
    volumes:
      - ./redis:/data
    healthcheck:
      test: ["CMD", "redis-cli", "ping"]
      interval: 10s
      timeout: 5s
      retries: 5

  backend:
    image: msmkls/daoliyu-backend:0.1.7
    restart: unless-stopped
    depends_on:
      postgres:
        condition: service_healthy
      redis:
        condition: service_started
    environment:
      NODE_ENV: production
      APP_PORT: 4000
      DATABASE_URL: "postgresql://daoliyu:daoliyupassword@postgres:5433/daoliyu?schema=public&connection_limit=25&pool_timeout=10&statement_timeout=60000&idle_in_transaction_session_timeout=60000"
      VIDEO_TRANSCODE_CACHE: "/app/storage/transcoded/videos"
      VIDEO_THUMBNAIL_CACHE: "/app/storage/thumbnails/videos"
      REDIS_URL: "redis://redis:6379/0"
      REGISTRATION_OPEN: "true"
      LOG_LEVEL: "info"
    volumes:
      - ./storage:/app/storage
      - ./media:/data/media
      - ./audiobooks:/data/audiobooks
      - ./music_videos:/data/music-videos
      - ./playlists:/data/playlists
      - ./plugins:/plugins
    healthcheck:
      test: ["CMD", "wget", "-qO-", "http://localhost:4000/health"]
      interval: 30s
      timeout: 5s
      retries: 5

  frontend:
    image: msmkls/daoliyu-frontend:0.1.7
    restart: unless-stopped
    container_name: daoliyu-music-frontend
    depends_on:
      backend:
        condition: service_started
    ports:
      - "5173:8080"

参数说明(更多参数建议去看文档)

:::/var/lib/postgresql/data(路径):postgresql 配置数据

/data(路径):redis 配置数据

/app/storage(路径):后端配置数据

/data/media(路径):音乐目录

/data/audiobooks(路径):有声书

/data/music-videos(路径):音乐视频

/data/playlists(路径):歌单

/plugins(路径):插件

:::

使用

浏览器中输入 http://NAS的IP:5173 就能看到界面

建议修改一下邮箱和密码,避免忘记

进入面板,排版配色还挺不错的

TIP:在 /data/media 目录放入歌曲

正常情况会自动扫描目录的歌曲,显示在面板

如果没有刷新出来,也可以手动扫描目录

TIP:也可以添加多个音乐目录

回到面板,点击音乐就可以播放了

点击多首音乐,可以加入播放歌单列表

右下角可以打开歌词显示

除了常规的播放功能,还支持音频均衡器

根据艺人分类

根据专辑分类

TIP:在 /data/audiobooks 目录放入有声书

可以正确读取到文件夹里的元数据(已经刮削过的)

有针对有声书做了适配,比如一共多少集和播放总时长

不想下载 APP 的,移动网页端访问也是可以的

客户端支持 Android 和 iOS ,下载地址:cn.amcfy.com

总结

体验使用下来,最大的感受就是界面设计好看,其次是支持音乐、有声书管理播放,提供客户端应用。不过即使与成熟开源音乐应用相比,还是存在不小的差距,比如:切歌有时候会操作卡顿、窗口缩放适配不足、操作逻辑待优化等问题。

综合推荐:⭐⭐⭐(支持音乐、有声书管理,未来可期)

使用体验:⭐⭐⭐(界面挺好看的,提供客户端应用)

部署难易:⭐⭐⭐(一般,关联容器多)︎

收藏
送赞
分享

6

主题

51

回帖

0

牛值

初出茅庐

这个是不是不是免费的?不过高质量的应用值得花钱支持。

0

主题

2

回帖

0

牛值

江湖小虾

感谢分享

2

主题

43

回帖

0

牛值

江湖小虾

漂亮

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则