
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
一个Docker容器,编译最新版本的Netatalk以运行Time Machine服务器,支持ARM设备(如树莓派)和x86架构,方便配置用户账户和存储卷。
若要在ARM设备(如树莓派)上使用,有两种选择:
$ docker run -h timemachine --name timemachine --restart=unless-stopped -d -v /external_volume:/timemachine -it -p 548:548 -p 636:636 odarriba/timemachine-rpi
$ docker build -t timemachine-rpi:latest -f Dockerfile . $ docker run -h timemachine --name timemachine --restart=unless-stopped -d -v /external_volume:/timemachine -it -p 548:548 -p 636:636 timemachine-rpi
下载并运行Docker容器:
$ docker run -h timemachine --name timemachine --restart=unless-stopped -d -v /external_volume:/timemachine -it -p 548:548 -p 636:636 --ulimit nofile=65536:65536 odarriba/timemachine
将external_volume替换为本地存储数据的路径。由于使用--restart=unless-stopped,容器会在系统启动时自动运行。
添加用户:
$ docker exec timemachine add-account USERNAME PASSWORD VOL_NAME VOL_ROOT [VOL_SIZE_MB]
若需指定UID/GID:
$ docker exec timemachine add-account -i 1000 -g 1000 USERNAME PASSWORD VOL_NAME VOL_ROOT [VOL_SIZE_MB]
注意:
VOL_NAME是OSX中显示的网络驱动器名称;VOL_ROOT应为绝对路径,建议是/timemachine的子路径(如/timemachine/backup);VOL_SIZE_MB是可选参数,指定用户卷的最大大小。Avahi守护进程用于帮助计算机发现服务器提供的服务。由于Docker网络限制,Avahi未内置在镜像中,需在主机安装:
(Ubuntu系统步骤):
avahi-daemon:sudo apt-get install avahi-daemon avahi-utils;avahi/nsswitch.conf复制到/etc/nsswitch.conf;avahi/afpd.service复制到/etc/avahi/services/afpd.service;sudo /etc/init.d/avahi-daemon restart。确保服务器允许端口548和636的流量(如ufw allow 548和ufw allow 636),且Mac设备允许 outgoing 连接。
afp://your-server(your-server为服务器名称或IP);可通过环境变量配置容器(适合docker-compose):
使用这些变量时,容器启动时会创建一个用户,数据直接存储在/timemachine(无 subfolders)。获取PUID/GID:id <dockeruser>。
容器运行后,防火墙已配置,但Time Machine找不到服务?
确保先手动挂载服务器卷(步骤5),再在Time Machine设置中查找。
容器重启后无法登录?
用户账户是临时的,需重新执行步骤2添加;或自定义entrypoint.sh脚本自动创建账户:
bash#!/bin/bash set -e # 重复添加所有账户 add-account USERNAME PASSWORD VOL_NAME VOL_ROOT [VOL_SIZE_MB] /usr/bin/supervisord -c /etc/supervisor/conf.d/supervisord.conf
保存为entrypoint.sh(chmod +x),运行容器时挂载:
$ docker run -h timemachine --name timemachine --restart=unless-stopped -d -v /external_volume:/timemachine -it -p 548:548 -p 636:636 -v entrypoint.sh:/entrypoint.sh odarriba/timemachine-rpi
仍有问题?
--net=host运行容器(注意安全风险);为何Avahi需安装在主机而非容器?
因Docker网络限制,容器内的Avahi无法广播发现消息到其他设备。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务