轩辕镜像
轩辕镜像专业版
个人中心搜索镜像
交易
充值流量我的订单
工具
工单支持镜像收录Run 助手IP 归属地密码生成Npm 源Pip 源
帮助
常见问题我要吐槽
其他
关于我们网站地图

官方QQ群: 13763429

轩辕镜像
镜像详情
mbentley/timemachine
官方博客使用教程热门镜像工单支持
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。
轩辕镜像 - 国内开发者首选的专业 Docker 镜像下载加速服务平台 - 官方QQ群:13763429 👈点击免费获得技术支持。
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

timemachine Docker 镜像下载 - 轩辕镜像

timemachine 镜像详细信息和使用指南

timemachine 镜像标签列表和版本信息

timemachine 镜像拉取命令和加速下载

timemachine 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

timemachine
mbentley/timemachine
自动构建

timemachine 镜像详细信息

timemachine 镜像标签列表

timemachine 镜像使用说明

timemachine 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

运行Samba或AFP(netatalk)以提供与macOS兼容的Time Machine备份服务的Docker镜像,支持多架构,推荐使用SMB模式(AFP已弃用)。
100 收藏0 次下载activembentley镜像
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源
中文简介版本下载
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源

timemachine 镜像详细说明

timemachine 使用指南

timemachine 配置说明

timemachine 官方文档

mbentley/timemachine

用于运行Samba或AFP(netatalk)的Docker镜像,提供与macOS兼容的Time Machine备份服务。

镜像标签

多架构标签

以下标签支持amd64、armv7l和arm64架构,将根据系统架构自动拉取正确的镜像:

latest、smb

注意:afp标签在新功能更新方面已被弃用,且仅支持amd64架构。

日期特定标签

smb标签还包含每日生成的唯一清单,格式为smb-YYYYMMDD(例如smb-20210730),可在Docker Hub查看。这些标签每日生成,本质上是smb标签清单的时间点快照,可固定使用。请注意,这些标签在Docker Hub上仅保留6个月,且不会接收安全修复。若无需固定特定镜像摘要,建议直接使用smb标签。

显式架构标签

这些标签将显式拉取指定架构的镜像,与多架构标签的镜像完全一致。

amd64

  • latest-smb-amd64、smb-amd64 - 基于alpine:latest的SMB镜像
  • afp、afp-amd64 - 基于debian:jessie的AFP镜像
    • 已弃用但仍可用;不再定期构建 - 此镜像可能存在未修补的安全漏洞

armv7l

  • latest-smb-armv7l、smb-armv7l - 基于alpine:latest的armv7l架构SMB镜像

arm64

  • latest-smb-arm64、smb-arm64 - 基于alpine:latest的arm64架构SMB镜像

警告:强烈建议迁移到SMB镜像,因为AFP已被Apple弃用,且SMB稳定性更高。2020年10月15日起,latest标签默认指向SMB变体。

拉取镜像命令: docker pull mbentley/timemachine:smb

SMB示例用法

注意:若修改TM_USERNAME值,持久化卷的路径会随之改变。详见持久化数据路径。

使用--net=host启用Avahi发现(推荐)

通过--net=host允许Avahi广播发现,常用环境变量设为默认值:

docker run -d --restart=always \
  --name timemachine \
  --net=host \
  -e TM_USERNAME="timemachine" \
  -e TM_GROUPNAME="timemachine" \
  -e PASSWORD="timemachine" \
  -e TM_UID="1000" \
  -e TM_GID="1000" \
  -e SET_PERMISSIONS="false" \
  -e VOLUME_SIZE_LIMIT="0" \
  -v /主机备份路径:/opt/timemachine \
  --tmpfs /run/samba \
  mbentley/timemachine:smb

暴露端口(不启用Avahi发现)

暴露端口但不使用Avahi,需手动在Finder中映射共享:

docker run -d --restart=always \
  --name timemachine \
  --hostname timemachine \
  -p 137:137/udp \
  -p 138:138/udp \
  -p 139:139 \
  -p 445:445 \
  -e TM_USERNAME="timemachine" \
  -e TM_GROUPNAME="timemachine" \
  -e PASSWORD="timemachine" \
  -e TM_UID="1000" \
  -e TM_GID="1000" \
  -e SET_PERMISSIONS="false" \
  -e VOLUME_SIZE_LIMIT="0" \
  -v /主机备份路径:/opt/timemachine \
  --tmpfs /run/samba \
  mbentley/timemachine:smb

Kubernetes支持

镜像兼容Kubernetes。参考timemachine-k3s.yaml示例,可在单节点k3s集群(如树莓派4)上部署TimeMachine服务器。

Avahi自动发现提示

--net=host模式下发现功能最佳,可广播服务。若不使用该模式,需暴露上述端口并手动在Finder中映射共享(打开Finder→点击"共享"→通过smb://主机名或IP/TimeMachine连接)。--net=host仅在主机未运行Samba或Avahi时可用!也可通过SMB_PORT修改Samba端口。

已知问题

进程启动失败;容器CPU使用率高

若容器无法启动且日志显示Failed to start message bus: Failed to bind socket,可能是nofile资源限制过低。需在docker run或compose文件中调整nofile限制:

--ulimit nofile=65536:65536

armv7l镜像启动失败

运行armv7l镜像时若出现以下错误:

s6-svscan: warning: unable to iopause: Operation not permitted

原因是libseccomp2包版本问题,解决方法:

  1. 为容器禁用seccomp(有安全风险):

    --security-opt seccomp=unconfined
    
  2. 安装backport版本的libseccomp2:

    wget [***]
    sudo dpkg -i libseccomp2_2.5.1-1~bpo10+1_armhf.deb
    

与主机Samba/Avahi冲突

若主机已运行Samba/Avahi(如树莓派OS默认mDNS响应器),--net=host会导致冲突。解决方法:

配置Avahi反射器

在主机编辑/etc/avahi/avahi-daemon.conf:

  • 设置enable-reflector=yes
  • 设置cache-entries-max=0(避免设备名称重复)

然后在容器中设置ADVERTISED_HOSTNAME为主机mDNS主机名(不含.local后缀)。

使用macvlan网络

创建macvlan网络(假设子网192.168.1.0/24,网关192.168.1.1,主机网卡eth0):

docker network create -d macvlan --subnet=192.168.1.0/24 --gateway=192.168.1.1 -o parent=eth0 macvlan1

在docker run中添加:

--network macvlan1 --ip 192.168.1.x
docker-compose macvlan示例
services:
  timemachine:
    hostname: timemachine
    mac_address: "AA:BB:CC:DD:EE:FF"
    networks:
      timemachine:
        ipv4_address: 192.168.1.x

networks:
  timemachine:
    driver: macvlan
    driver_opts:
      parent: eth0
    ipam:
      config:
        - subnet: 192.168.1.0/24
          gateway: 192.168.1.1

卷和文件系统权限

持久化存储需支持扩展文件属性(xattr),NFS等远程文件系统可能不支持。镜像会检查/opt/${TM_USERNAME}中的测试文件xattr支持并警告。默认timemachine用户UID/GID为1000:1000。

持久化数据路径

修改TM_USERNAME后,容器内数据路径会变为/opt/<TM_USERNAME>,需确保卷映射正确,否则数据会存储在容器内。

默认凭据

  • 用户名:timemachine
  • 密码:timemachine

SMB可选环境变量

变量默认值描述
ADVERTISED_HOSTNAME未设置Avahi广播的主机名(不含.local),用于Avahi反射器场景
CUSTOM_SMB_AUTHno设置为yes时,Samba使用NTLM加密密码认证
CUSTOM_SMB_CONFfalse设为true时,需挂载自定义/etc/samba/smb.conf
CUSTOM_SMB_PROTOSMB2Samba协议版本,参考Samba协议列表
CUSTOM_USERfalse设为true时,需挂载/etc/passwd、/etc/group、/etc/shadow并创建数据目录
DEBUG_LEVEL1nmbd和smbd调试级别
EXTERNAL_CONF未设置多用户配置目录(含.conf文件),详见多用户和共享
HIDE_SHARESno设为yes时,仅显示用户可访问的共享
MIMIC_MODELTimeCapsule8,119模拟的Time Capsule型号
TM_USERNAMEtimemachine运行用户名称
TM_GROUPNAMEtimemachine运行用户组名称
TM_UID1000用户UID
TM_GID1000用户组GID
PASSWORDtimemachine用户密码
SET_PERMISSIONSfalse设为true时,入口脚本会设置/opt/<username>权限
SHARE_NAMETimeMachine共享名称
SMB_INHERIT_PERMISSIONSno设为yes时,新文件权限继承父目录
SMB_NFS_ACESnofruit:nfs_aces值,控制NFS ACEs支持
SMB_METADATAstreamfruit:metadata值,控制OS X元数据流存储位置
SMB_PORT445Samba服务端口
SMB_VFS_OBJECTSfruit streams_xattrvfs objects值
VOLUME_SIZE_LIMIT0备份最大容量(0为无限制),支持单位(如1 T),参考Samba文档
WORKGROUPWORKGROUPSamba工作组名称
IGNORE_DOS_ATTRIBUTESfalse设为true时,Samba忽略DOS属性

多用户和共享

通过EXTERNAL_CONF指定包含用户配置文件(.conf后缀)的目录,每个文件定义一个用户及共享。

示例EXTERNAL_CONF文件

创建foo.conf定义用户foo:

TM_USERNAME=foo
TM_GROUPNAME=foogroup
PASSWORD=foopass
SHARE_NAME=foo
VOLUME_SIZE_LIMIT="1 T"
TM_UID=1000
TM_GID=1000

EXTERNAL_CONF运行示例

docker run -d --restart=always \
  --name timemachine \
  --net=host \
  --ulimit nofile=65536:65536 \
  -e EXTERNAL_CONF="/users" \
  -v /主机备份路径:/opt \
  -v /用户配置目录:/users \
  --tmpfs /run/samba \
  mbentley/timemachine:smb

使用密码文件

通过Docker secrets传递密码,示例compose配置:

version: "3.3"
services:
  timemachine:
    environment:
      - PASSWORD_FILE=/run/secrets/password
    secrets:
      - password

secrets:
  password:
    file: ./password.txt

AFP示例和变量

点击展开

AFP docker-compose示例

docker compose -f timemachine-compose.yml up -d

AFP docker run示例

使用--net=host启用Avahi发现

docker run -d --restart=always \
  --net=host \
  --name timemachine \
  -e CUSTOM_AFP_CONF="false" \
  -e CUSTOM_USER="false" \
  -e LOG_LEVEL="info" \
  -e MIMIC_MODEL="TimeCapsule6,106" \
  -e TM_USERNAME="timemachine" \
  -e TM_GROUPNAME="timemachine" \
  -e TM_UID="1000" \
  -e TM_GID="1000" \
  -e PASSWORD="timemachine" \
  -e SET_PERMISSIONS="false" \
  -e SHARE_NAME="TimeMachine" \
  -e VOLUME_SIZE_LIMIT="0" \
  -v /主机备份路径:/opt/timemachine \
  -v timemachine-netatalk:/var/netatalk \
  -v timemachine-logs:/var/log/supervisor \
  mbentley/timemachine:afp

暴露端口(不启用Avahi发现)

docker run -d --restart=always \
  --name timemachine \
  --hostname timemachine \
  -p 548:548 \
  -p 636:636 \
  -e CUSTOM_AFP_CONF="false" \
  -e CUSTOM_USER="false" \
  -e LOG_LEVEL="info" \
  -e MIMIC_MODEL="TimeCapsule6,106" \
  -e TM_USERNAME="timemachine" \
  -e TM_GROUPNAME="timemachine" \
  -e TM_UID="1000" \
  -e TM_GID="1000" \
  -e PASSWORD="timemachine" \
  -e SET_PERMISSIONS="false" \
  -e SHARE_NAME="TimeMachine" \
  -e VOLUME_SIZE_LIMIT="0" \
  -v /主机备份路径:/opt/timemachine \
  -v timemachine-netatalk:/var/netatalk \
  -v timemachine-logs:/var/log/supervisor \
  mbentley/timemachine:afp

AFP可选变量

变量默认值描述
CUSTOM_AFP_CONFfalse设为true时,需挂载自定义/etc/netatalk/afp.conf
CUSTOM_USERfalse设为true时,需挂载/etc/passwd、/etc/group、/etc/shadow
LOG_LEVELinfonetatalk日志级别
MIMIC_MODELTimeCapsule6,106模拟的Time Capsule型号
TM_USERNAMEtimemachine运行用户名称
TM_GROUPNAMEtimemachine运行用户组名称
TM_UID1000用户UID
`TM_GID
查看更多 timemachine 相关镜像 →

常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像免费版与专业版有分别支持哪些镜像?

免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

轩辕镜像下载加速使用手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

🔐

登录方式进行 Docker 镜像下载加速教程

通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤

🐧

Linux Docker 镜像下载加速教程

在 Linux 系统上配置轩辕镜像源,支持主流发行版

🖥️

Windows/Mac Docker 镜像下载加速教程

在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统

📦

Docker Compose 镜像下载加速教程

在 Docker Compose 中使用轩辕镜像加速,支持容器编排

📋

K8s containerd 镜像下载加速教程

在 k8s 中配置 containerd 使用轩辕镜像加速

🔧

宝塔面板 Docker 镜像下载加速教程

在宝塔面板中配置轩辕镜像加速,提升服务器管理效率

💾

群晖 NAS Docker 镜像下载加速教程

在 Synology 群晖NAS系统中配置轩辕镜像加速

🐂

飞牛fnOS Docker 镜像下载加速教程

在飞牛fnOS系统中配置轩辕镜像加速

📱

极空间 NAS Docker 镜像下载加速教程

在极空间NAS中配置轩辕镜像加速

⚡

爱快路由 ikuai Docker 镜像下载加速教程

在爱快ikuai系统中配置轩辕镜像加速

🔗

绿联 NAS Docker 镜像下载加速教程

在绿联NAS系统中配置轩辕镜像加速

🌐

威联通 NAS Docker 镜像下载加速教程

在威联通NAS系统中配置轩辕镜像加速

📦

Podman Docker 镜像下载加速教程

在 Podman 中配置轩辕镜像加速,支持多系统

📚

ghcr、Quay、nvcr、k8s、gcr 等仓库下载镜像加速教程

配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤

🚀

专属域名方式进行 Docker 镜像下载加速教程

无需登录即可使用轩辕镜像加速服务,更加便捷高效

需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429

商务:17300950906
|©2024-2025 源码跳动
商务合作电话:17300950906|Copyright © 2024-2025 杭州源码跳动科技有限公司. All rights reserved.