Linux Docker挂载群晖WebDAV到本地

挂载群晖的WebDAV,使用群晖的WebDAV Server搭建的服务。

群晖配置了证书。

使用镜像:docker-webdav-client

复制代码
docker run -it --rm \
    --device /dev/fuse \
    --cap-add SYS_ADMIN \
    --security-opt "apparmor=unconfined" \
    --env "WEBDRIVE_USERNAME=<YourUserName>" \
    --env "WEBDRIVE_PASSWORD=<SuperSecretPassword>" \
    --env "WEBDRIVE_URL=https://dav.box.com/dav" \
    --env "DAVFS2_ASK_AUTH=0" \
    -v /mnt/tmp:/mnt/webdrive:rshared \
    efrecon/webdav-client

这个镜像就是封装了davfs2

用环境变量DAVFS2_开头可以将参数写入到此工具的配置文件:/etc/davfs2/davfs2.conf

DAVFS2_ASK_AUTH=0 :如果在secretsfile中找不到凭据和密码,则以交互方式询问用户。询问用户是否无法验证servercert。0 =否,1 =是。

在绑定过程中发生以下错误:

复制代码
Caught TERM! Unmounting /mnt/webdrive...
Forwarding TERM to 13
the server certificate does not match the server name
the server certificate is not trusted
issuer:      Synology Inc., Taipel, TW
subject:     Synology Inc., Taipel, TW
identity:    synology
fingerprint: xxxx
You only should accept this certificate, if you can
verify the fingerprint! The server might be faked
or there might be a man-in-the-middle-attack.

这是因为用的IP和SSL证书不匹配,解决:

导出群晖的证书:控制面板-安全性-证书-操作-导出证书 解压 只需要cert.pem,放到Linux服务器上

增加以下参数:

--env "DAVFS2_trust_server_cert=/cert/cert.pem" 用于指定证书,路径是容器内的

-v /root/webdav/cert:/cert 将证书映射进容器

复制代码
docker run -it --rm \
    --device /dev/fuse \
    --cap-add SYS_ADMIN \
    --security-opt "apparmor=unconfined" \
    --env "WEBDRIVE_USERNAME=<YourUserName>" \
    --env "WEBDRIVE_PASSWORD=<SuperSecretPassword>" \
    --env "WEBDRIVE_URL=https://dav.box.com/dav" \
    --env "DAVFS2_ASK_AUTH=0" \
    --env "DAVFS2_trust_server_cert=/cert/cert.pem" \
    -v /mnt/tmp:/mnt/webdrive:rshared \
    -v /root/webdav/cert:/cert \
    efrecon/webdav-client
相关推荐
ZzzK,21 小时前
JAVA虚拟机(JVM)
java·linux·jvm
Aspiresky21 小时前
浅析Linux进程信号处理机制:基本原理及应用
linux·运维·信号处理
2401_897930061 天前
使用Docker轻松部署Neo4j图数据库
数据库·docker·neo4j
全栈工程师修炼指南1 天前
告别手动构建!Jenkins 与 Gitlab 完美协作,根据参数自动化触发CI/CD流水线实践
运维·ci/cd·自动化·gitlab·jenkins
ajassi20001 天前
linux C 语言开发 (八) 进程基础
linux·运维·服务器
..过云雨1 天前
05.【Linux系统编程】进程(冯诺依曼体系结构、进程概念、进程状态(注意僵尸和孤儿)、进程优先级、进程切换和调度)
linux·笔记·学习
matlab的学徒1 天前
Web与Nginx网站服务(改)
linux·运维·前端·nginx·tomcat
LeeZhao@1 天前
【AI推理部署】Docker篇04—Docker自动构建镜像
人工智能·docker·容器
程思扬1 天前
利用JSONCrack与cpolar提升数据可视化及跨团队协作效率
网络·人工智能·经验分享·docker·信息可视化·容器·架构
Insist7531 天前
prometheus安装部署与alertmanager邮箱告警
linux·运维·grafana·prometheus