
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
!https://github.com/jaymoulin/docker-jdownloader/raw/master/logo.png "logo"
https://github.com/jaymoulin/docker-jdownloader | https://github.com/jaymoulin/docker-jdownloader/issues
https://img.shields.io/github/release/jaymoulin/docker-jdownloader.svg "最新版本"](http://github.com/jaymoulin/docker-jdownloader/releases) https://img.shields.io/docker/pulls/jaymoulin/jdownloader.svg](https://hub.docker.com/r/jaymoulin/jdownloader/) https://img.shields.io/docker/stars/jaymoulin/jdownloader.svg](https://hub.docker.com/r/jaymoulin/jdownloader/)
免责声明:自2021年起,本产品不再提供免费支持团队。如果您希望继续维护此产品,请通过Patreon提供支持。
(本产品基于免费且宽松的许可证发布,但需要财务支持以维持其持续改进。除了维护、支持和稳定性外,还有许多理想的功能尚未添加。)
该镜像允许您通过Docker轻松安装JDownloader 2,并通过MyJDownloader进行控制,无需繁琐的VNC会话。
以下是创建容器的一些示例。请注意,此软件包也托管在Github Container Registry上,只需在镜像名称前添加ghcr.io/(使用docker pull ***-ghcr.xuanyuan.run/jaymoulin/jdownloader而非jaymoulin/jdownloader)
Docker命令
bashdocker run -d --init --restart=always \ -v </path/to/downloads>:/opt/JDownloader/Downloads \ -v </path/to/appdata/config>:/opt/JDownloader/app/cfg \ --name jdownloader \ -u $(id -u) \ -p 3129:3129 \ -e MYJD_USER=email@email.com \ -e MYJD_PASSWORD=bar \ -e MYJD_DEVICE_NAME=goofy \ docker.xuanyuan.run/jaymoulin/jdownloader
Docker Compose配置
yamlservices: jdownloader: image: docker.xuanyuan.run/jaymoulin/jdownloader container_name: jdownloader restart: always user: 1001:100 volumes: - </path/to/appdata/config>:/opt/JDownloader/app/cfg - </path/to/downloads>:/opt/JDownloader/Downloads - </path/to/appdata/logs>:/opt/JDownloader/app/logs # 可选 - </path/to/appdata/extensions>:/opt/JDownloader/app/extensions # 可选 - /etc/localtime:/etc/localtime:ro # 可选 environment: FILE_MYJD_USER: myjd-user # 可选 (参见身份验证部分) FILE_MYJD_PASSWORD: myjd-password # 可选 (参见身份验证部分) MYJD_USER: email@email.com # 可选 (参见身份验证部分) MYJD_PASSWORD: bar # 可选 (参见身份验证部分) MYJD_DEVICE_NAME: goofy # 可选 XDG_DOWNLOAD_DIR: /opt/JDownloader/Downloads # 可选 ports: - 3129:3129 secrets: - myjd-user # 可选 (参见身份验证部分) - myjd-password # 可选 (参见身份验证部分) secrets: myjd-user: # 可选 (参见身份验证部分) file: ~/jdownloader/secrets/myjd_user.txt myjd-password: # 可选 (参见身份验证部分) file: ~/jdownloader/secrets/myjd_password.txt
Kubernetes配置
yamlapiVersion: apps/v1 kind: Deployment metadata: name: jdownloader labels: app: jdownloader spec: replicas: 1 selector: matchLabels: app: jdownloader template: metadata: labels: app: jdownloader spec: containers: - name: jdownloader image: docker.xuanyuan.run/jaymoulin/jdownloader env: - name: MYJD_USER value: "email@email.com" - name: MYJD_PASSWORD valueFrom: secretKeyRef: name: my_jd_secret key: password volumeMounts: - mountPath: /opt/JDownloader/app name: exec - mountPath: /opt/JDownloader/app/cfg name: cfg - mountPath: /opt/JDownloader/Downloads name: downloads - mountPath: /opt/JDownloader/app/extensions name: extensions volumes: - name: exec emptyDir: {} - name: cfg hostPath: path: /path/to/jd/cfg type: Directory - name: downloads hostPath: path: /path/to/downloads type: Directory - name: extensions hostPath: path: /path/to/extensions type: Directory
RPI Zero注意事项:请指定arm32v6镜像(例如jaymoulin/jdownloader:0.7.0-arm32v6),因为rpi zero错误地将自己识别为armhf架构。
卷挂载配置
| 参数 | 功能 |
|---|---|
-v /opt/JDownloader/app/cfg | 配置文件文件夹,在主机上保存您的配置 |
-v /opt/JDownloader/app/logs | 容器日志文件夹,仅在需要在主机上保留日志时指定 |
-v /opt/JDownloader/app/extensions | 扩展文件夹,仅在需要安装扩展并在主机上保留时指定 |
-v /opt/JDownloader/Downloads | 下载文件夹(您的下载挂载点) |
-u <UID>:<GID> | 添加用户标识符以使用用户权限运行容器。要获取这些值,请在主机上运行id yourusername |
-p 3129:3129 | 直接连接模式所需的网络端口,更多信息见直接连接部分 |
环境变量
| 参数 | 功能 |
|---|---|
FILE_MYJD_USER=myjd-user | MyJDownloader用户的Docker密钥 |
FILE_MYJD_PASSWORD=myjd-password | MyJDownloader密码的Docker密钥 |
MYJD_USER=email@email.com | 您的MyJDownloader用户 |
MYJD_PASSWORD=foo | 您的MyJDownloader密码 |
MYJD_DEVICE_NAME=goofy | 将显示在MyJdownloader门户上的设备名称 |
XDG_DOWNLOAD_DIR=/opt/JDownloader/Downloads | 如果使用此变量,请将其设置为下载文件夹卷的路径! |
UMASK="0002" | 定义下载文件的特定权限(默认:未定义)- 必须遵循八进制形式(以0开头,后跟0到7之间的三个数字)(参见[***] |
身份验证
有3种方式可以提供MyJDownloader的登录密码:
声明FILE_MYJD_USER和FILE_MY_JD_PASSWORD,这与docker secret一起使用:https://docs.docker.com/engine/swarm/secrets/#use-secrets-in-compose%E3%80%82%E8%BF%99%E6%98%AF%E6%9C%80Docker%E5%8C%96%E7%9A%84%E6%96%B9%E5%BC%8F%E3%80%82
声明MYJD_USER和MYJD_PASSWORD值,这只会创建环境变量
如果未设置FILE_MYJD_USER、FILE_MY_JD_PASSWORD、MYJD_USER和MYJD_PASSWORD值,您仍然可以通过运行以下命令配置账户(推荐方法,因为它最安全,但在docker-compose中不是完全自动的):
bashdocker exec jdownloader configure email@email.com password
其他选项可以在您的MyJDownloader账户上更改:[***]
直接连接模式(或直接连接)通过MyJDownloader GUI改进了此容器的使用,强烈建议至少在局域网中使用。
启用此模式后,客户端和JDownloader服务器之间的通信将通过端口3129(默认)直接进行,而不是通过MyJDownloader服务器路由。这使GUI响应更快,信息更新更可靠。在此模式下,MyJDownloader服务器仍然处理与服务相关的任务,如会话身份验证和通知。
要从互联网启用直接连接模式,您需要打开并转发端口3129,调整路由器配置。更多信息请参见JDownloader文章
DNS Rebind警告
如果您运行的路由器如Fritz!Box、Asus、OpenWRT、DDWRT、pfSense或任何其他第三方"高级"路由器,您可能启用了DNS Rebind Protection:直接连接将无法工作,您必须显式将mydns.jdownloader.org列入白名单。每个路由器的过程不同,以下是一些提示:
Asus Merlin:按照https://github.com/RMerl/asuswrt-merlin.ng/wiki/Custom-domains-with-dnsmasq%E5%90%AF%E7%94%A8%E8%87%AA%E5%AE%9A%E4%B9%89%E8%84%9A%E6%9C%AC%E5%B9%B6%E7%BC%96%E8%BE%91dnsmasq%E6%96%87%E4%BB%B6%EF%BC%8C%E7%84%B6%E5%90%8E%E6%B7%BB%E5%8A%A0%E8%A1%8C%60rebind-domain-ok=/mydns.jdownloader.org/%60
FreshTomato:在"高级->DHCP/DNS/Dnsmasq自定义配置"中添加rebind-domain-ok=mydns.jdownloader.org
Fritz!Box:JDownloader的知识库文章
OpenWRT:浏览到网络>DHCP和DNS>一般设置,并将mydns.jdownloader.org添加到域名白名单
pfSense:更多信息https://github.com/jaymoulin/docker-jdownloader/issues/61#issuecomment-607474205
要在使用桥接网络时获得直接连接,请按照以下步骤操作:
创建容器时暴露3129端口(-p 3129:3129参数)
当JDownloader运行时,导航到设置>高级设置>搜索"myjdownloader">找到MyJDownloaderSettings: Custom Device IPs并使用以下格式输入您的主机LAN IP ["192.168.1.10"]。如果需要指定多个IP,请使用["192.168.1.10","10.10.10.10"]
将MyJDownloaderSettings: Manual Local Port设置为3129
将MyJDownloaderSettings: Direct Connect Mode设置为Allow lan/wan connections with manual port forwarding
重启JDownloader,现在连接将是直接的
您可以在下载文件夹中放置一个名为jdownloader-block.txt的文件来暂停容器启动。这将允许通过shell连接到容器进行调试(docker exec -it jdownloader sh)
如果您尚未安装Docker,可以使用以下命令轻松地一行安装:
bashcurl -sSL "[***]" | sudo sh && sudo usermod -aG docker $USER
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务