
这是一个非常简单的MPD SubSonic scrobbler,并非LAST.FM或libre.fm的scrobbler。当MPD播放来自SubSonic服务器的歌曲时,此scrobbler能让MPD通知SubSonic服务器。SubSonic服务器(若配置)可将歌曲记录到LAST.FM、libre.fm等平台。在使用Upmpdcli的SubSonic插件时可能会有用,详见https://github.com/navidrome/navidrome/discussions/2324%E3%80%82
。我的分支 (镜像) |
| mpd-alsa-docker | https://github.com/GioF71/mpd-alsa-docker |
| upmpdcli-docker | https://github.com/GioF71/upmpdcli-docker |
| subsonic-connector | https://github.com/GioF71/subsonic-connector |
| python-mpd2 | https://github.com/Mic92/python-mpd2 |
其中,mpd-alsa-docker和upmpdcli-docker提供Docker部署mpd和upmpdcli的方法。
| 仓库 | URL |
|---|---|
| 源代码 | https://github.com/GioF71/mpd-subsonic-scrobbler |
| Docker镜像 | https://hub.docker.com/r/giof71/mpd-subsonic-scrobbler |
| 卷 | 描述 |
|---|---|
| /config | 建议存放额外配置文件的位置 |
| 变量 | 描述 | 默认值 |
|---|---|---|
| MPD_FRIENDLY_NAME | MPD实例的友好名称 | |
| MPD_HOST | MPD主机名 | localhost |
| MPD_PORT | MPD端口 | 6600 |
| SUBSONIC_FRIENDLY_NAME | SubSonic服务器的友好名称 | |
| SUBSONIC_PARAMETERS_FILE | SubSonic参数的单独配置文件 | |
| SUBSONIC_BASE_URL | SubSonic服务器URL,需包含http或https | |
| SUBSONIC_PORT | SubSonic服务器端口 | |
| SUBSONIC_USER | SubSonic用户名 | |
| SUBSONIC_PASSWORD | SubSonic密码 | |
| SUBSONIC_LEGACYAUTH | 旧版认证,lms需设为true,默认false | |
| SUBSONIC_CREDENTIALS | 凭据文件引用,替代SUBSONIC_USER和SUBSONIC_PASSWORD | |
| SUBSONIC_UPMPDCLI_BASE_URL | 若设置,仅允许此upmpdcli服务器(基础URL) | |
| SUBSONIC_UPMPDCLI_PORT | 若设置,仅允许此upmpdcli服务器(端口) | |
| MIN_COVERAGE | 需要播放的歌曲百分比 | 50 |
| ENOUGH_PLAYBACK_SEC | 最小播放时间(秒),无论覆盖率 | 240 |
| SLEEP_TIME | 两次覆盖率检查间隔(毫秒) | 1000 |
| REDACT_CREDENTIALS | 设为1时启动不显示凭据 | |
| MAX_SUBSONIC_SERVERS | 最大SubSonic服务器数量 | 10 |
| MAX_MPD_INSTANCES | 最大MPD实例数量 | 10 |
| MPD_CLIENT_TIMEOUT_SEC | MPD客户端超时时间(秒) | 0.05 |
| ITERATION_DURATION_THRESHOLD_PERCENT | 总耗时超过SLEEP_TIME此百分比时警告 | |
| MPD_IMPOSED_SLEEP_ITERATION_COUNT | MPD不可访问时睡眠迭代次数 | 30 |
| VERBOSE | 详细输出(1/0) | 0 |
SubSonic配置参数为必需:可通过环境变量或SUBSONIC_PARAMETERS_FILE指定(文件需容器可访问,建议放/config卷)。MPD_*和SUBSONIC_*变量可加后缀_1、_2等配置多实例/服务器,配置文件中变量名不带索引。
使用单独配置文件
为mpd-d10和mpd-d200(mpd-alsa-docker实例)创建scrobbler,SubSonic配置从文件读取:
yaml--- version: "3" networks: mpd: external: true services: scrobbler: image: giof71/mpd-subsonic-scrobbler:latest container_name: subsonic-scrobbler-d10 networks: - mpd environment: - MPD_HOST=mpd-d10 - MPD_PORT=6600 - MPD_HOST_1=mpd-d200 - MPD_PORT_1=6600 - SUBSONIC_PARAMETERS_FILE=/config/my-navidrome.env - SUBSONIC_PARAMETERS_FILE_1=/config/navidrome-demo.env - VERBOSE=0 volumes: - ./my-navidrome.env:/config/my-navidrome.env:ro - ./navidrome-demo.env:/config/navidrome-demo.env:ro restart: unless-stopped
直接环境变量配置
不使用单独文件,配置参数从.env读取:
yaml--- version: "3" networks: mpd: external: true services: scrobbler: image: giof71/mpd-subsonic-scrobbler:latest container_name: subsonic-scrobbler-d10 networks: - mpd environment: - MPD_HOST=mpd-d10 - MPD_PORT=6600 - MPD_HOST_1=mpd-d200 - MPD_PORT_1=6600 - SUBSONIC_BASE_URL=${MY_NAVIDROME_BASE_URL} - SUBSONIC_PORT=${MY_NAVIDROME_PORT} - SUBSONIC_USER=${MY_NAVIDROME_USER} - SUBSONIC_PASSWORD=${MY_NAVIDROME_PASSWORD} - SUBSONIC_BASE_URL_1=${NAVIDROME_DEMO_BASE_URL} - SUBSONIC_PORT_1=${NAVIDROME_DEMO_PORT} - SUBSONIC_USER_1=${NAVIDROME_DEMO_USER} - SUBSONIC_PASSWORD_1=${NAVIDROME_DEMO_PASSWORD} - VERBOSE=0 restart: unless-stopped
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。




探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务