如何为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"具体步骤:
- 修改docker-compose文件(如timemachine-compose-smb.yml),添加环境变量:
environment: - TM_USERNAME=timemachine - PASSWORD=timemachine - EXTRA_SHARES="Documents:/opt/documents,Downloads:/opt/downloads"- 添加对应的卷挂载:
volumes: - /path/to/your/timemachine/volume:/opt/timemachine - /path/to/documents:/opt/documents - /path/to/downloads:/opt/downloads- 重启容器使配置生效:
docker-compose -f timemachine-compose-smb.yml down docker-compose -f timemachine-compose-smb.yml up -d⚠️ 注意:所有额外共享将自动应用与Time Machine共享相同的用户权限设置,确保挂载的目录具有正确的读写权限。
方法二:使用自定义SMB配置文件(高级配置)
当需要更精细的控制共享权限或高级Samba功能时,可以使用自定义SMB配置文件。
实现步骤:
- 创建自定义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- 修改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- 重启容器使配置生效:
docker-compose -f timemachine-compose-smb.yml down docker-compose -f timemachine-compose-smb.yml up -d验证共享是否生效
添加共享后,可以通过以下方法验证:
在macOS上验证:
- 打开Finder
- 按
Cmd+K - 输入
smb://服务器IP - 连接后应该能看到Time Machine和新添加的共享文件夹
在容器内验证:
docker exec -it timemachine smbclient -L localhost -U timemachine注意事项
权限设置:确保所有挂载的共享目录具有正确的权限,可通过设置
SET_PERMISSIONS=true让容器自动配置权限。性能考虑:过多的共享可能会影响Time Machine备份性能,建议将不同类型的文件分开存储。
安全建议:对于敏感数据,可在自定义配置中设置
read only = yes来限制写权限。升级注意:使用自定义配置文件时,升级镜像可能需要手动合并新的配置选项。
通过上述方法,您可以轻松扩展Docker Time Machine的功能,使其同时作为家庭或小型办公环境的文件服务器使用,充分利用现有资源。
【免费下载链接】docker-timemachineDocker image to run Samba (compatible Time Machine for macOS)项目地址: https://gitcode.com/gh_mirrors/do/docker-timemachine
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考