轩辕镜像 官方专业版
轩辕镜像
专业版
轩辕镜像 官方专业版
轩辕镜像
专业版
首页个人中心搜索镜像
交易
充值流量¥7起我的订单
文档
工具
提交工单页面收录
jrivermc28

shiomax/jrivermc28

shiomax

JRiver Media Center 28的Docker镜像,基于jlesage/baseimage-gui构建,用于创建"headless" JRiver服务器,支持音乐流媒体服务,可通过Web或VNC访问管理界面。注意:新项目推荐使用shiomax/jrivermc替代此镜像。

下载次数: 0状态:社区镜像维护者:shiomax仓库类型:镜像最近更新:3 年前
让 AI 帮你使用轩辕镜像? · 展开查看说明 · 点击收起说明

如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。

只需在 AI 对话中先发送下面这句话即可:

请先完整阅读并严格遵守以下文档中的全部规则与要求:

https://xuanyuan.cloud/agents.md

在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。

查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。

中文简介
下载命令
镜像标签列表与下载命令
使用轩辕镜像,把时间还给真正重要的事。
点击查看

JRiver Media Center - Docker

!!!

现在有一个新镜像https://hub.docker.com/r/shiomax/jrivermc%E5%8F%AF%E7%94%A8%EF%BC%8C%E5%B0%86%E6%9C%89%E6%95%88%E6%9B%BF%E4%BB%A3%E6%AD%A4%E9%95%9C%E5%83%8F%E3%80%82%E5%AF%B9%E4%BA%8E%E6%96%B0%E5%AE%89%E8%A3%85%EF%BC%8C%E5%BB%BA%E8%AE%AE%E7%AB%8B%E5%8D%B3%E4%BD%BF%E7%94%A8%E6%96%B0%E9%95%9C%E5%83%8F%EF%BC%8C%E5%9B%A0%E4%B8%BA%E6%AD%A4%E9%95%9C%E5%83%8F%E6%9C%80%E7%BB%88%E5%B0%86%E5%81%9C%E6%AD%A2%E7%BB%B4%E6%8A%A4/%E6%9E%84%E5%BB%BA%E3%80%82

!!!

这是一个社区构建的JRiver Media Center Docker镜像。镜像基于https://github.com/jlesage/docker-baseimage-gui%E6%9E%84%E5%BB%BA%E3%80%82

源代码可在gitlab.com获取。

它旨在用作中央"headless" JRiver服务器,您可以通过其他任何JRiver实例从中流式传输音乐。

可以设置从容器直接播放音乐,但依赖于主机上运行的alsa(请参见声音部分)。

Dockerhub

JRiver版本仓库仍在重建
Media Center 30https://hub.docker.com/r/shiomax/jrivermc30是
Media Center 29https://hub.docker.com/r/shiomax/jrivermc29是
Media Center 28https://hub.docker.com/r/shiomax/jrivermc28是
Media Center 27https://hub.docker.com/r/shiomax/jrivermc27否
Media Center 26https://hub.docker.com/r/shiomax/jrivermc26否
Media Center 25https://hub.docker.com/r/shiomax/jrivermc25否
Media Center 24https://hub.docker.com/r/shiomax/jrivermc24否

截图

!screenshot

如何使用

关于network_mode设置的注意事项 大多数情况下,建议使用host网络。除非您需要更改端口映射,因为某些端口可能已被主机使用。如果使用桥接网络,会有一些注意事项。首先,您需要定义自定义MAC地址,否则JRiver实例将频繁激活,因为其许可证不允许MAC地址更改。另外,我注意到桥接网络下网络发现不太正常,这意味着其他JRiver实例可能无法将此Docker容器发现为一个区域。

Docker Compose

推荐使用docker-compose。使用docker-compose时,您将创建一个配置文件docker-compose.yml,其中包含容器的所有配置。这使得使用完全相同的配置重新创建容器变得更加容易。例如,当您想要更改正在使用的镜像版本时,您需要销毁并重新创建容器。如果不使用docker-compose,您需要记住使用的确切docker run命令,以便使用相同的配置重新创建容器。

桥接网络(默认)

yml
version: '3'
services:
  jrivermc28:
    image: shiomax/jrivermc28
    restart: always
    container_name: jrivermc28
    mac_address: ed:e8:60:2d:65:c1
    ports:
      - "5800:5800"
      - "5900:5900"
      - "52100:52100"
      - "52101:52101"
      - "52199:52199"
      - "1900:1900/udp"
    environment:
      - VNC_PASSWORD=12345
    volumes:
        - /path/to/config:/config:rw
        - /path/to/music:/data/music:rw

或使用主机网络:

yml
version: '3'
services:
  jrivermc28:
    image: shiomax/jrivermc28
    restart: always
    container_name: jrivermc28
    network_mode: host
    environment:
      - VNC_PASSWORD=12345
    volumes:
        - /path/to/config:/config:rw
        - /path/to/music:/data/music:rw

运行容器:docker-compose up -d

更新容器:

  • docker-compose pull 拉取compose文件中指定的最新镜像
  • docker-compose down 停止并删除容器(假设已挂载/config卷,数据不会丢失)
  • docker-compose up -d 创建容器并后台运行
  • docker image prune 清理未使用的镜像

不使用Docker Compose

桥接网络(默认)

sh
docker run -d \
    --name=jrivermc28 \
    --net=bridge \
    --restart=always \
    --mac-address=ed:e8:60:2d:65:c1 \
    -p 5800:5800 \
    -p 5900:5900 \
    -p 52199:52199 \
    -p 52101:52101 \
    -p 52100:52100 \
    -p 1900:1900/udp \
    -v config:/config:rw \
    -v /path/to/music:/data/music:rw \
    -e VNC_PASSWORD=12345 \
    shiomax/jrivermc28

或使用主机网络:

sh
docker run -d \
    --name=jrivermc28 \
    --net=host \
    --restart=always \
    -v config:/config:rw \
    -v /path/to/music:/data/music:rw \
    -e VNC_PASSWORD=12345 \
    shiomax/jrivermc28

更新容器:

  • docker pull shiomax/jrivermc28:latest 拉取带有latest标签的新镜像
  • docker rm -f jrivermc28 停止并删除名称为jrivermc28的容器
  • docker run -d .... 重新运行最初创建容器时使用的完整run命令
  • docker image prune 清理未使用的镜像

镜像标签

  • shiomax/jrivermc28:latest

    使用来自'latest'仓库的JRiver版本(这也是不指定任何标签时的默认值)

  • shiomax/jrivermc25:stable

    使用来自'stable'仓库的JRiver版本,其他方面相同

  • 类似25.0.83-latest-1、25.0.50-stable-1、25.0.80-latest-0这样的标签

这些是当时stable和latest标签的副本。如果新版本镜像出现问题,您可以使用这些标签回退。这些镜像只推送一次,之后不再更新。标签包含JRiver版本(25.0.83)、JRiver仓库(latest)和镜像版本(1)。

卷(绑定挂载)

卷:

  • /config 这是容器的主目录,一定要将其挂载到外部目录,以便正确持久化您的设置等。您的库备份也将保存在这里。只要您有这个文件夹,就可以随意销毁和重新创建容器,JRiver(应该)会恢复到原来的状态。如果没有这个文件夹并且删除了容器,那么您所做的一切都将丢失。对于临时安装(测试目的),不挂载它也可以。
  • /data/music 您可以将音乐挂载到/data/music。您也可以使用任何其他文件夹来挂载媒体。如果不知道放在哪里,只需使用/data/music即可。

端口

端口映射:

  • JRiver使用的端口:52100、52101、52199、1900/udp
  • Web GUI端口:5800
  • VNC访问端口:5900(如果只使用web GUI,则不需要此端口)

声音

您可以在主机和容器之间映射alsa声音设备/dev/snd,以启用从容器内播放声音。

  • 使用docker run命令时,添加选项--device /dev/snd。

  • 使用docker compose时,在docker-compose.yml中添加以下内容:

yml
devices:
  - "/dev/snd"

注意:7版本之前不支持此功能。

访问GUI

您可以通过Web浏览器或VNC客户端访问GUI。

假设您没有重新映射端口:

  • Web UI
http://<主机IP地址>:5800
  • Web UI(启用SECURE_CONNECTION时)
https://<主机IP地址>:5800
  • VNC
<主机IP地址>:5900
  • VNC(启用SECURE_CONNECTION时)
<主机IP地址>:5900

注意:您需要支持SSL加密的VNC客户端,例如SSVNC。当您打开SECURE_CONNECTION标志时,许多VNC客户端将无法工作。

使用.mjr文件激活JRiver

如果密钥由于任何原因无法工作,您可以从[***]

  1. 将.mjr文件放入配置目录
  2. 使用bash登录容器:docker exec -it <container_name> /bin/bash
  3. 激活JRiver(首先设置$HOME很重要,否则bash会话将使用临时主目录,而不是与JRiver相同的目录)
export HOME=/config 
mediacenter28 /RestoreFromFile /config/<mjr_file_name>
  1. JRiver现在应该已激活。您现在可以删除.mjr文件。

注意: 在撰写本文时,如果MC正在运行,/RestoreFromFile命令将无法工作。运行该命令只会杀死MC,但激活会失败。如果容器因任何原因退出,MC会自动启动。如果您至少使用镜像的16版本,可以通过在创建容器时将BLOCK_MC_STARTUP设置为1,或在运行的容器内使用touch /tmp/BLOCK_MC_STARTUP并随后关闭MC来阻止MC启动。删除该文件将允许MC再次启动(rm /tmp/BLOCK_MC_STARTUP)。在尝试激活MC之前执行此操作。

权限问题

如果在容器中遇到权限问题且无法访问媒体,有多种解决方法。

更改音乐文件夹的权限和/或所有权是一种方法。但您也可以通过更改GROUP_ID和USER_ID环境变量来更改JRiver在容器内运行的用户。

这两个是数值,默认值为1000,在通用Linux安装中,这是您创建的第一个用户的ID。如果您的音乐文件夹属于另一个用户,可以更改这些值。

  1. 找出文件夹属于哪个用户和组
ls -la /path/to/music
  1. 使用id命令找出该用户的数字ID
id <username>
  1. 相应调整容器配置。

使用docker-cli:

sh
docker run -d \
    --name=jrivermc28 \
    --net=host \
    --restart=always \
    -v config:/config:rw \
    -v /path/to/music:/data/music:rw \
    -e USER_ID=1234 \
    -e GROUP_ID=1234 \
    -e VNC_PASSWORD=12345 \
    shiomax/jrivermc28

使用docker-compose:

yml
version: '3'
services:
  jrivermc28:
    image: shiomax/jrivermc28
    restart: always
    container_name: jrivermc28
    network_mode: host
    environment:
      - VNC_PASSWORD=12345
      - USER_ID=1234
      - GROUP_ID=1234
    volumes:
        - /path/to/config:/config:rw
        - /path/to/music:/data/music:rw

防火墙配置(仅与主机网络相关)

这通常只在使用主机网络时需要。默认情况下,桥接网络不需要任何防火墙配置。因为安装docker时,docker-proxy已经被允许通过。

firewalld(centos、fedora或rhel)

  1. 以root身份登录:sudo su(所有这些操作都需要root权限,或者不使用su并在每个命令前加上sudo)
  2. 创建文件:nano /etc/firewalld/services/jriver.xml
<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>jriver</short>
  <description>Ports required by JRiver MediaCenter.</description>
  <port protocol="tcp" port="5800"></port>
  <port protocol="tcp" port="52199"></port>
  <port protocol="tcp" port="52100"></port>
  <port protocol="tcp" port="52101"></port>
  <port protocol="tcp" port="5900"></port>
  <port protocol="udp" port="1900"></port>
</service>
  1. 重新加载firewalld:firewall-cmd --reload
  2. 临时添加配置:firewall-cmd --add-service=jriver --zone=public
  3. 尝试访问jriver
  4. 如果成功,使配置永久生效
    • firewall-cmd --add-service=jriver --zone=public --permanent
    • firewall-cmd --reload
  5. 如果失败,您需要找出原因。由于配置只是临时应用,再次重新加载将使其消失。

ufw(ubuntu或debian 如果安装了ufw)

  1. 以root身份登录:sudo su或在debian上使用su(所有这些操作都需要root权限,否则在每个命令前加上sudo)
  2. 创建文件:nano /etc/ufw/applications.d/jriver
[jriver]
title=jriver
description=Ports required by JRiver MediaCenter
ports=5800,52199,52100,52101,5900/tcp|1900/udp
  1. 更新应用配置文件:ufw app update jriver,之后可以使用ufw app info jriver检查配置
  2. 允许应用:ufw allow jriver

运行自定义初始化任务

注意:仅适用于高级用户。

在启动时运行自定义初始化逻辑的好方法是编写一个初始化脚本并将其挂载到/etc/cont-init.d。您可以执行任何操作,例如安装其他软件包或修复损坏的内容。但是,如果您进行的更改可以帮助其他镜像用户,我鼓励您尝试提交这些更改(在gitlab.com上创建合并请求),以便这些更改对所有人可用,而不仅仅是您自己。

/etc/cont.init.d中的脚本在容器启动时按前面的数字顺序执行。例如,10-max-popup.sh当前如下所示:

#!/usr/bin/with-contenv sh

set -e # 如果命令以非零状态退出,则立即退出。
set -u # 将未设置的变量视为错误。

log() {
    echo "[cont-init.d] $(basename $0): $*"
}

if [ "$MAXIMIZE_POPUPS" = "1" ]; then
    log "Applying max popup config to openbox."
    sed -i '/<\/applications>/{
        r /templates/max-popups.xml
        a \</applications>
        d
    }' /etc/xdg/openbox/rc.xml
else
    log "Popups won't be maximized"
fi;

这没什么特别的,只是在openbox配置中应用更改,使弹出窗口全屏显示。您可以使用这些脚本做任何事情。编写它们,然后像挂载其他文件一样将它们挂载到容器中,就像挂载音乐目录一样。现在您只需挂载单个文件。我建议在前面使用大数字(如100),以便您的脚本在所有其他初始化逻辑之后运行。

环境变量

特定于此镜像的环境变量:

变量描述默认值
MAXIMIZE_POPUPS设置为1时最大化MC弹出窗口。0
BLOCK_MC_STARTUP设置为1时,MC将被阻止启动,直到/tmp/BLOCK_MC_STARTUP被删除。`

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

轩辕镜像加速拉取命令点我查看更多 jrivermc28 镜像标签

docker pull docker.xuanyuan.run/shiomax/jrivermc28:<标签>

使用方法:

  • 登录认证方式
  • 免认证方式

DockerHub 原生拉取命令

docker pull shiomax/jrivermc28:<标签>

轩辕镜像配置手册

按平台快速找到配置文档

Docker

登录仓库拉取

登录认证 · 私有仓库

专属域名拉取

免登录 · 高速拉取

Linux

Docker 镜像配置

Windows / Mac

Docker Desktop 配置

MacOS OrbStack

OrbStack 容器

Docker Compose

Compose 项目配置

NAS

群晖

Synology 配置

飞牛

fnOS 镜像配置

绿联

绿联 NAS

威联通

QNAP 配置

极空间

极空间 NAS

企业仓库

其他仓库

ghcr · Quay · nvcr

Harbor 镜像源

Proxy Repository 对接

Portainer 镜像源

Registries 配置

Nexus 镜像源

Docker Proxy 缓存

开发工具

Dev Containers

VS Code 开发容器

Podman

Podman 配置指南

Singularity / Apptainer

HPC 科学计算容器

Kubernetes

K8s Containerd

Kubernetes · Containerd

K3s

轻量级集群

面板 / 网络

爱快路由

iKuai 镜像加速

宝塔面板

一键配置镜像源

AI

用 AI 使用轩辕镜像

agents.md · AI 对话 · 提示词

一键安装

一键安装 Docker

Linux Docker 一键安装

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

功能

免费版与专业版区别

功能对比 · 版本选择

支持的镜像仓库

Docker Hub · GCR · GHCR

新手拉取配置

登录 · 专属域名 · 配置

docker search 限制

专属域名 · Hub 搜索

不支持 push

仅支持 pull · 不支持

拉取速度原因

带宽 · 缓存 · 冷热镜像

错误码

402 与流量用尽

402 · 流量包 · 充值

401 认证失败

401 · docker login

manifest unknown

标签错误 · 镜像不存在

410 Gone 排查

410 · Docker 升级

429 限流

免费版 · 请求频率

其他报错

DNS 超时

DNS 解析 · 网络超时

TLS 证书失败

no matching manifest(架构)

账号

失败是否计费

manifest · blob · 计费

申请开发票(企业 / 个人)

企业 · 个人 · 工单

修改登录密码

网站 · 仓库 · 重置

注销账户

工单 · 数据 · 注销

原理

mirrors 不生效

daemon.json · 重启

去掉域名前缀

docker tag · 重命名

指定架构拉取

ARM64 · AMD64 · 多架构

latest 与「最新」

digest · 版本号 · 标签

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
shiomax/jrivermc28
教程轩辕镜像功能与使用教程
定价查看流量套餐与价格
热门查看热门 Docker 镜像推荐
博客Docker 镜像公告与技术博客
专业版 · 高速稳定拉取镜像
高速镜像下载·在线技术支持·99.95% SLA 保障·付费会员免广告
50GB 仅 ¥7/年
专业版 · 高速稳定拉取镜像
50GB 仅 ¥7/年
高速镜像下载·在线技术支持·99.95% SLA 保障·付费会员免广告
商务合作:点击复制邮箱
用户协议·隐私政策·©2024-2026 源码跳动
用户协议·隐私政策©2024-2026 杭州源码跳动科技有限公司商务合作:点击复制邮箱

更多 jrivermc28 镜像推荐

shiomax/jrivermc26 logo

shiomax/jrivermc26

shiomax
JRiver Media Center 26的Docker镜像,用于搭建无头媒体服务器,支持音乐流传输至其他JRiver实例,并通过Web或VNC进行管理。
10万+ 次下载
4 年前更新
shiomax/jrivermc25 logo

shiomax/jrivermc25

shiomax
JRiver Media Center 25的Docker镜像,基于jlesage/baseimage-gui构建,用于搭建无头媒体服务器,支持音乐流传输、VNC/Web GUI访问及持久化配置。
4 次收藏10万+ 次下载
6 年前更新
shiomax/jrivermc logo

shiomax/jrivermc

shiomax
社区构建的JRiver Media Center Docker镜像,用于作为无头媒体服务器,支持其他MC实例流媒体播放媒体;可配置直接音乐播放,需主机运行alsa。
6 次收藏10万+ 次下载
16 天前更新
shiomax/jrivermc27 logo

shiomax/jrivermc27

shiomax
shiomax/jrivermc27是JRiver Media Center 27的Docker镜像,基于jlesage/baseimage-gui构建,用于搭建无头媒体服务器,支持音乐流传输和多设备访问,需用户自行激活JRiver许可证。
2 次收藏1万+ 次下载
3 年前更新
shiomax/jrivermc30 logo

shiomax/jrivermc30

shiomax
JRiver Media Center的社区构建Docker镜像,基于jlesage/baseimage-gui,用于作为中央“无头”服务器,支持其他JRiver实例流媒体播放。注意:新安装推荐使用替代镜像shiomax/jrivermc,当前镜像可能停止维护。
1万+ 次下载
3 年前更新

查看更多 jrivermc28 相关镜像