目录

「Music」我的地盘我作主

自托管音乐服务的运维记录。

元数据刮削 / Metadata

MusicBrainz Picard

部署

docker compose 配置参考如下

services:
  picard:
    image: jlesage/musicbrainz-picard:v26.08.2
    container_name: picard
    profiles: ["music"]
    restart: unless-stopped
    networks:
      - traefik_proxy
    environment:
      - USER_ID=1000
      - GROUP_ID=1000
      - TZ=Asia/Shanghai
      - LC_ALL=zh_CN.UTF-8
      - LANG=zh_CN.UTF-8
      - KEEP_APP_RUNNING=1
      - ENABLE_VNC_AUDIO=0
      - DISPLAY_WIDTH=1600
      - DISPLAY_HEIGHT=900
    # ports:
    #   - 5800:5800 # Web UI  # only for debug, must access by traefik
    volumes:
      - /path/to/your/picard:/config
      - /path/to/your/shared_fonts:/usr/share/fonts/custom:ro
      - "/path/to/your/music:/storage"
    labels:
      - "traefik.enable=true"
      - "traefik.docker.network=traefik_proxy"
      - "traefik.http.routers.picard.rule=Host(`picard.aio.yirami.xyz`)"
      - "traefik.http.routers.picard.entrypoints=websecure"
      - "traefik.http.routers.picard.tls=true"
      - "traefik.http.routers.picard.tls.certresolver=le"
      - "traefik.http.services.picard.loadbalancer.server.port=5800"
    deploy:
      resources:
        limits:
          cpus: '2.0'
          memory: 2G
    healthcheck:
      test: ["CMD-SHELL", "nc -z localhost 5800 || exit 1"]
      interval: 30s
      timeout: 10s
      retries: 5
      start_period: 30s

设定

配置代理
  1. 选项->选项->高级->网络
  2. 勾选网络代理,并设置合适的代理
文件整理

用于在写入元数据时,自动按照“歌手/专辑/序号 - 歌名”重命名文件并归档到新目录

  1. 选项->选项->重命名文件
  2. (勾选)保存时移动文件,并将目标目录设置为 /storage/library 目录
  3. (取消勾选)删除空文件夹(防止 /storage/inbox 被删)
  4. (勾选)保存时重命名文件
  5. 修改命名模板(注意使用界面左侧的剪贴板同步功能)
    $if2(%albumartist%,%artist%)/
    $if(%album%,$if(%date%,$left(%date%,4) - ,)%album%,其他单曲)/
    $if($gt(%totaldiscs%,1),Disc $num(%discnumber%,2)/,)
    $if(%tracknumber%,$num(%tracknumber%,2) - ,)%title%

用法

  1. 左上角点击添加文件添加文件夹

  2. 选择挂载的 inbox 目录(该目录默认用于存放待刮削曲目)

  3. 选中左侧出现的曲目后有两种刮削方式,建议优先使用查询

    • 查询(lookup):依据现有的标签信息在数据库中搜索
    • 扫描(scan):基于声学指纹(AcoustID)在数据库中匹配
  4. 匹配成功后,不同的颜色表示匹配度

    • 绿色:匹配度极高( $>80%$ )
    • 黄色/橙色:匹配度中等(版本或曲目有细微差异)
    • 红色:匹配度较低(建议人工核对)

    此外,底部区域会显示刮削前后的字段差异,方便对比

  5. 对于下载的专辑文件夹,更建议在右上角直接搜索相应专辑,并锁定该专辑

MusicTag

部署

设定

推流 / Streaming

部署

设定