随着云计算和移动办公大潮的到来,iPad、智能手机等家庭联网设备不断增多,以及搭载小容量SSD笔记本电脑的流行,能够跨平台分享的个人云服务需求不断增长;而今天的个人云服务也已经极大丰富,从2TB的百度网盘到商务人士中流行的Dropbox和Box个人云,不但免费,而且功能界面简单易用。
但是,对于影音发烧友、高度重视数据安全、数据密集型的极客和中小企业用户而言,个人DIY的私有云依然是不二的选择。目前市场上的私有云产品大致可以分为四类:PC私有云、NAS私有云、智能路由私有云和WiFi移动存储私有云。
何为免费,就是不用花钱,购买nas,智能路由和移动WiFi来搭建以及服务器来搭建都需要花钱。
可道云kodbox:可能国内是最好用的开源网盘。搭建简单,插件丰富,操作友好
企业版都是不开源的。都是基础版(社区版)免费+企业版收费的方式
个人搭建可道云网盘甚至承担了NAS的功效,把家中近10T的硬盘资源真正盘活了,随时随地可以登录网页来查看陈年的文件、照片;随时随地,可以通过手机来看视频、查文档,可道云APP也几乎成了我常用的APP之一。
推荐使用docker compose进行安装,参考教程:https://juejin.cn/post/7200396667506016293
这是我的docker-compose.xml
version: "3.1"
services:
db:
image: mariadb
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
volumes:
- "./db:/var/lib/mysql"
environment:
- "TZ=Asia/Shanghai"
- "MYSQL_ROOT_PASSWORD=sbsn555"
- "MYSQL_DATABASE=kodbox"
- "MYSQL_USER=kodbox"
- "MYSQL_PASSWORD=sbsn555"
app:
image: kodcloud/kodbox
ports:
- 1119:80
links:
- db
- redis
volumes:
- "./site:/var/www/html"
restart: always
redis:
image: redis:alpine
environment:
- "TZ=Asia/Shanghai"
restart: always
https://demo.kodcloud.com/#user/login --官网提供的体验网站
图形化操作很简单,此处不再赘述
下载客户端,然后输入 ip:port 进行连接远程服务器,使用用户名密码登录登录
注:在个人文档中的数据会被保存到数据库db,db又会同步保存到local storage 中
1、非空文件最终会保存到数据库和磁盘local storage中,但是不会区分是谁的文件
2、保存到local storage时即便是创建了目录,磁盘中也不会做任何区分
https://post.smzdm.com/p/apvn77kx/pic_12/
文件备份只支持本数据库的文件备份不支持跨库的文件备份
1、用户的document 的数据都在这里
2、用户数据相关的文档在这里
磁盘数据迁移原理
直接单纯的文件拷贝是不能用的,甚至服务都起不来,数据迁移其实分为两部分 数据库mysql迁移 + 磁盘数据迁移
1、数据库mysql迁移 /data/docker2/site/db
数据库中保存了用户信息,和用户的文档内容,所以这个是主要备份对象
2、磁盘数据迁移 /data/docker2/site/data/files
磁盘中保存了一些系统文件和所有个人用户的文档(注没有任何路径区分,且只有admin用户可以看到)
具体操作:
旧的数据库:docker_db_1 (mariadb)
新的数据库:docker2_db_1 (mariadb)
1、进入旧的数据库容器 docker_db_1 中将数据库kodbox导出为backup.sql
mysqldump -ukodbox -psbsn555 kodbox --column-statistics=0 > backup.sql
2、进入新的数据库容器 docker2_db_1 将 backup.sql 导入
mysql -ukodbox -psbsn555 kodbox < backup.sql
root@3c38f554638e:/var/lib/mysql# mysql -ukodbox -psbsn555 kodbox < backup.sql
mysql: [Warning] Using a password on the command line interface can be insecure.
root@3c38f554638e:/var/lib/mysql#
效果:
可以看到旧的云盘文件已经迁移到新的云盘文件了
其他: