映射SMB共享目录

上传文件后无法触发CloudSync同步文件?

使用MT Photos上传或删除文件后,CloudSync无法触发同步;

这是因为群晖不会监听docker容器内对文件的改动;

因此需要使用cifs来挂载SMB共享路径,然后通过smb来触发群晖的文件变化

cifs来挂载SMB教程: https://mtmt.tech/docs/start/cifs/

需要注意的地方:

如果第一次输入的smb登录信息不对,需要修改;需要同时修改下volume名称,也就是下面的 cifs_mount

原因: 第一次运行docker compose时,docker会检查volume是否存在,没有的话就创建;

但是当volume已经存在,再修改username、password这些,也不会修改之前已存在的volume;

因此需要修改volume名称,让docker使用修改后的smb登录信息来创建新的volume;

version: "3"

services:
  mtphotos:
    #省略不相关部分
    volumes:
      #省略不相关部分
      - cifs_mount:/photos_user1  # mount_user1为下方volumes挂载的smb路径 ,  /photos_user1为映射到容器内的路径
    #省略不相关部分
volumes:
  cifs_mount:  # volume名称 cifs_mount 为示例模板,需要按下面模板文件 mount_user1 示例修改才能使用
    driver: local
    driver_opts:
      type: cifs
      device: //<REMOTE_IP>/<PATH_TO_LIBRARY>  # REMOTE_IP PATH_TO_LIBRARY  需要替换为实际可用的值
      o: "username=<USERNAME>,password=<PASSWORD>,vers=3.0,iocharset=utf8" # USERNAME  PASSWORD 需要替换为实际可用的值

完整 docker-compose.yaml 模板文件

version: "3"

services:
  mtphotos:
    image: registry.cn-hangzhou.aliyuncs.com/mtphotos/mt-photos:latest
    container_name: mtphotos
    restart: always
    ports:
      - 8063:8063
    volumes:
      - /volume1/docker/mt_photos/config:/config
      - /volume1/photos/mt_photos_upload:/upload
      - mount_user1:/photos_user1  # mount_user1为下方volumes挂载的smb路径
    environment:
      - TZ=Asia/Shanghai
      - LANG=C.UTF-8
    dns:
      - 114.114.114.114
    depends_on:
      - mtphotos_ai
      - mtphotos_face_api
  mtphotos_ai:
    image: registry.cn-hangzhou.aliyuncs.com/mtphotos/mt-photos-ai:onnx-latest
    container_name: mtphotos_ai
    restart: always
    ports:
      - 8060:8060
    environment:
      - API_AUTH_KEY=mt_photos_ai_extra
  mtphotos_face_api:
    image: crpi-gcuyquw9co62xzjn.cn-guangzhou.personal.cr.aliyuncs.com/devfox101/mt-photos-insightface-unofficial:latest
    container_name: mtphotos_face_api
    restart: always
    ports:
      - 8066:8066
    environment:
      - API_AUTH_KEY=mt_photos_ai_extra

volumes:
  mount_user1:  # mount_user1为volume名称, 这里只是举例,可以改为别的名称
    driver: local
    driver_opts:
      type: cifs
      device: //127.0.0.1/homes/mt/Photos  # 这里为SMB的访问路径, 127.0.0.1 表示当前机器
      o: "username=mt,password=123456,vers=3.0,iocharset=utf8"  #  mt 有权限访问这个目录的用户,  123456为用户mt的密码
  mount_user2:  # 可以添加多个volume
    driver: local
    driver_opts:
      type: cifs
      device: //127.0.0.1/homes/mt/Photos 
      o: "username=mt,password=123456,vers=3.0,iocharset=utf8" 

Copyright © 2025 杭州相册家科技有限公司 All Rights Reserved

隐私协议软件许可及服务协议

浙公网安备 33019202000625号浙ICP备2022014580号