news 2026/7/15 13:17:49

如何为Docker Time Machine添加非Time Machine文件共享

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
如何为Docker Time Machine添加非Time Machine文件共享

如何为Docker Time Machine添加非Time Machine文件共享

【免费下载链接】docker-timemachineDocker image to run Samba (compatible Time Machine for macOS)项目地址: https://gitcode.com/gh_mirrors/do/docker-timemachine

Docker Time Machine是一个基于Samba协议的Docker镜像,专为macOS的Time Machine备份设计。除了Time Machine功能外,我们还可以通过简单配置为其添加额外的文件共享服务,实现一个服务器同时提供备份和普通文件共享的双重功能。

两种添加额外共享的方法

方法一:使用EXTRA_SHARES环境变量(快速配置)

这是添加非Time Machine共享的最简单方法,只需在启动容器时添加EXTRA_SHARES环境变量即可。该变量支持以逗号分隔的"名称:路径"对,每个条目代表一个额外的共享。

基本格式

EXTRA_SHARES="共享名称1:/路径1,共享名称2:/路径2"

具体步骤

  1. 修改docker-compose文件(如timemachine-compose-smb.yml),添加环境变量:
environment: - TM_USERNAME=timemachine - PASSWORD=timemachine - EXTRA_SHARES="Documents:/opt/documents,Downloads:/opt/downloads"
  1. 添加对应的卷挂载:
volumes: - /path/to/your/timemachine/volume:/opt/timemachine - /path/to/documents:/opt/documents - /path/to/downloads:/opt/downloads
  1. 重启容器使配置生效:
docker-compose -f timemachine-compose-smb.yml down docker-compose -f timemachine-compose-smb.yml up -d

⚠️ 注意:所有额外共享将自动应用与Time Machine共享相同的用户权限设置,确保挂载的目录具有正确的读写权限。

方法二:使用自定义SMB配置文件(高级配置)

当需要更精细的控制共享权限或高级Samba功能时,可以使用自定义SMB配置文件。

实现步骤

  1. 创建自定义smb.conf文件,添加额外共享配置:
[Documents] path = /opt/documents read only = no valid users = timemachine vfs objects = fruit streams_xattr [Downloads] path = /opt/downloads read only = yes valid users = timemachine vfs objects = fruit streams_xattr
  1. 修改docker-compose文件,添加自定义配置挂载:
environment: - CUSTOM_SMB_CONF=true volumes: - /path/to/your/timemachine/volume:/opt/timemachine - /path/to/documents:/opt/documents - /path/to/downloads:/opt/downloads - /path/to/your/smb.conf:/etc/samba/smb.conf
  1. 重启容器使配置生效:
docker-compose -f timemachine-compose-smb.yml down docker-compose -f timemachine-compose-smb.yml up -d

验证共享是否生效

添加共享后,可以通过以下方法验证:

  1. 在macOS上验证

    • 打开Finder
    • Cmd+K
    • 输入smb://服务器IP
    • 连接后应该能看到Time Machine和新添加的共享文件夹
  2. 在容器内验证

docker exec -it timemachine smbclient -L localhost -U timemachine

注意事项

  1. 权限设置:确保所有挂载的共享目录具有正确的权限,可通过设置SET_PERMISSIONS=true让容器自动配置权限。

  2. 性能考虑:过多的共享可能会影响Time Machine备份性能,建议将不同类型的文件分开存储。

  3. 安全建议:对于敏感数据,可在自定义配置中设置read only = yes来限制写权限。

  4. 升级注意:使用自定义配置文件时,升级镜像可能需要手动合并新的配置选项。

通过上述方法,您可以轻松扩展Docker Time Machine的功能,使其同时作为家庭或小型办公环境的文件服务器使用,充分利用现有资源。

【免费下载链接】docker-timemachineDocker image to run Samba (compatible Time Machine for macOS)项目地址: https://gitcode.com/gh_mirrors/do/docker-timemachine

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/15 13:15:33

5分钟掌握Palworld存档编辑:终极幻兽帕鲁存档修改工具指南

5分钟掌握Palworld存档编辑:终极幻兽帕鲁存档修改工具指南 【免费下载链接】palworld-save-tools Tools for converting Palworld .sav files to JSON and back 项目地址: https://gitcode.com/gh_mirrors/pa/palworld-save-tools Palworld存档编辑工具&…

作者头像 李华
网站建设 2026/7/15 13:13:56

解决VRM4U项目中VMC面部表情在打包构建后失效的完整方案

1. 项目概述:当表情在构建后“消失”如果你正在使用VRM4U插件在Unreal Engine中驱动你的虚拟角色,并且已经成功通过VMC协议让角色的面部表情在编辑器里活灵活现,那么恭喜你,你已经走在了虚拟制作的前沿。但紧接着,一个…

作者头像 李华
网站建设 2026/7/15 13:13:36

Unity游戏实时本地化实战:XUnity.AutoTranslator插件配置与优化指南

1. 项目概述:为什么我们需要一个“终极”本地化方案?如果你是一个独立游戏开发者,或者在一个小团队里负责游戏出海,那么“本地化”这个词对你来说,可能既熟悉又头疼。熟悉的是,你知道它很重要,是…

作者头像 李华
网站建设 2026/7/15 13:13:07

Navicat重置终极指南:Mac版无限试用期完整解决方案

Navicat重置终极指南:Mac版无限试用期完整解决方案 【免费下载链接】navicat_reset_mac navicat mac版无限重置试用期脚本 Navicat Mac Version Unlimited Trial Reset Script 项目地址: https://gitcode.com/gh_mirrors/na/navicat_reset_mac 你是否正在使用…

作者头像 李华