基于Docker部署可道云(KodCloud)时,通过挂载宿主机其他磁盘目录可实现高效、安全的数据管理。具体而言,使用绑定挂载(Bind Mounts)将宿主机目录(如/data/disk2)映射到容器内的可道云数据目录(如/var/www/html/data),可直接绕过容器存储层,实现数据持久化。此方案具有三大核心优势:
数据安全性:文件直接存储在宿主机的物理磁盘中,即使容器崩溃或重建,数据仍可完整保留;
性能优化:宿主机磁盘的I/O性能优于容器虚拟化层,尤其适用于大文件读写场景(如视频在线编辑);
灵活扩展:可动态挂载多个磁盘分区,突破容器存储空间限制,同时便于跨容器共享数据(如与数据库容器共用日志目录)。此外,通过权限控制(如设置-u参数匹配宿主机用户组),可避免容器内外权限冲突,增强系统安全性。
本文是基于豆豆容器市场中的可道云安装程序进行扩展的,不保证其他的可道云的docker系统能正常使用,有需求的请去豆豆容器市场进行一键安装。
网站: https://ds.sendtokindle.net.cn/
方案1: 基于FTP和webdav的网络挂接方式
这种是常规操作,这里不赘述,自行百度或者问ai
方案2: 基于本地硬盘的方式挂接
1.环境介绍:
群晖系统,本地有两块硬盘,默认docker安装的可道云在宿主机的目录在第一块硬盘volume1中:
下面图片中的路径是容器的目录,对应宿主机的目录是
/volume1/@apphome/app/dockerstore/dockerstore_kodcloudstd/site/data/file
需要挂接的目录在另外一个磁盘,目录如下
/volume2/mydsm2/abctest /
2.在可道云容器中创建一个新的挂接目录,用于挂接第二块硬盘的目录,在挂接磁盘的位置,打开文件夹,然后进行新建文件夹,这个时候不要更改文件夹,点击取消即可.
3.在ssh连接工具中执行挂接命令,把第二块磁盘目录挂接到刚才创建的myhd目录
先执行 sudo -i
切换到root用户,再执行mount挂接命令
sudo mount --bind /volume2/mydsm2/abctest /volume1/@apphome/app/dockerstore/dockerstore_kodcloudstd/site/data/myhd
4.修改可道云的存储目录的路径为新创建的myhd
保存后,重启docker容器,一定不要重启宿主机
5.检测可道云的docker容器挂接目录是否成功挂接第二块硬盘的目录
如下可以看到 这两个目录内容完全一致,说明挂接成功
/volume1/@apphome/app/dockerstore/dockerstore_kodcloudstd/site/data/myhd
/volume2/mydsm2/abctest#
6.导入挂接硬盘的数据,创建文件索引
7.验证导入的文件是否挂接成功