赞
踩
自己组了台主机做服务器,正好打算部署个nas云存储服务,原本想要在上面装黑群晖,但后面发现有点鸡肋(也有可能是因为docker版的黑群晖不好用吧),用不太习惯,就决定找其他服务来使用,试用了几个不同的服务,例如:ZFile;
但后来发现 可道云 功能更多,而且还有 移动端的APP 与 PC端的客户端 可以用,这里就果断的选择了可道云,免费版限制创建10个用户够用,收费的功能也用不到,就是它了!
如果你没任何要求,安装方式随意那就按照官方的方式来吧。
想按照官方的安装方式参考官方文档:https://docs.kodcloud.com/setup/1/
安装到宿主机,部署这个服务需要配置:nginx 1.22、php 8.0、MySQL 8.0、redis 7.0等,然后,,然后就参考官方文档吧 (我没试过) 。。
有宝塔面板就更方便了,有环境后软件商店直接搜索kodcloud ,点击安装;或者是宝塔的 Docker 菜单面板中点击一键部署。
但如果你想要可道云部署在Docker上,并且数据库使用宿主机的MySQL,那你可以接着往下看:
我现在已经在服务器上安装了 MySQL5.7,当然了更高的版本应该也是可以用的,创建一个空数据库来存放 kodcloud 的数据,名字随意了,例如我的数据库名就叫 kodbox 。
接下来要拉取官方的最新镜像(老版本我试过可能无法跑满局域网的千兆),官方镜像点击这里,执行拉取镜像命令:
docker pull kodcloud/kodbox
不指定版本默认拉取最新版本镜像,拉取成功后查看一下镜像是否拉取成功:
docker images
有这条就对了
REPOSITORY TAG IMAGE ID CREATED SIZE
kodcloud/kodbox latest 8e0d62efa742 2 weeks ago 494MB
或者是用这个插件查询
确定好你要创建项目的路径,就比如说我的路径创建在 /app/kodbox 下,在这个目录下创建文件 “docker-compose.yml”,内容大致如下 (注意空格):
version: "3.5"
services:
app:
image: kodcloud/kodbox
ports:
- 5000:80 #左边 5000 是主机访问端口,可按需修改
links:
- redis
environment:
- "TZ=Asia/Shanghai"
- "MYSQL_SERVER=数据库地址" #数据库ip
- "MYSQL_PORT=数据库端口" #数据库端口
- "MYSQL_DATABASE=数据库名称" #数据库名称
- "MYSQL_USER=数据库用户名" #数据库用户名
- "MYSQL_PASSWORD=数据库密码" #数据库密码
- "SESSION_HOST=redis" #Redis使用Docker创建的
volumes:
- "/app/kodbox/data:/var/www/html" #左边 /app... 代表kodbox宿主机持久化所在目录位置
restart: always
redis:
image: redis:alpine
environment:
- "TZ=Asia/Shanghai"
restart: always
(不推荐)如果你不想折腾用redis做缓存,想直接用文件缓存的方式,那问题也不大,就删除services.redis及以下的内容、删除services.app.links、删除 - “SESSION_HOST=redis”
以上的内容根据自己的需求去修改。
为了启动方便在同个目录下创建个启动文件 “run.sh”,内容为:
docker-compose -f /你yml文件所在的路径/docker-compose.yml up -d
在刚才所在的路径输入
./run.sh
启动。
初次启动可能较慢,耐心等待。。。
接着可以输入
docker ps -a
查看已运行的容器
看到一个可道云以及一个redis那就对了。
因为我这里初次安装的时候没让我选择缓存方式,所以大概率默认是文件缓存,点击左边的桌面 →找到系统设置→服务器管理→缓存切换
我就知道,至于为什么会这样我也不太清楚,总之修改为redis,在这里我之前踩了一个坑,当我ip填写为 “127.0.0.1” 就会报错 “connection refused”,看了下官方文档才想到要填写 yml 配置文件中 link 的“redis”
(没需求可以跳过这一步)
我的主机硬盘配置是一个固态硬盘做系统盘,几个氦气机械盘做仓库盘,所以我希望将 docker 与 宿主机 间的项目文件留在固态盘,存储文件全放在机械盘上;
如果你有与我类型的需求但又怕麻烦,可以在 “3.创建配置文件” 的步骤中直接将项目放入到机械盘挂载的目录内,其实这样问题也不大;但我就要折腾一下 。
首先要确认你的 项目所在地 与 文件存储所在地,例如我的项目在 (固态盘) /app/kodcloud 下,存储在(机械盘) /data/files 下,记得授权目录权限,最好是777,可执行:chmod 777 /文件夹路径
在 “docker-compose.yml” 文件的 services.app.volumes 中添加存储映射路径,例如将宿主机的 /data/files 挂载到 Docker 的 /df 目录:
- "/data/files:/df"
停止容器,删除容器
docker rm -f <容器ID 或 容器名称>
./run.sh 重新启动
系统设置 → 存储管理 → 修改配置 → 修改存储目录为刚才设置的 /df → 保存
上传文件试试,然后到宿主机看看文件是否存储在自己的指定位置
方法1稍微简单点,方法2比较麻烦:
还是一样要先确定文件希望存储在哪个路径,例如我希望我的文件都存储在宿主机的 /data/files 下,先创建好文件夹;
接下来需要了解的一点是 kodcloud 在 Docker 中的项目路径为 /var/www/html;文件存储路径为 /var/www/html/data/files;所以根据 “docker-compose.yml” 配置文件中的
volumes:
- "/app/kodbox/data:/var/www/html"
可以确定对应宿主机的文件存储路径为:/app/kodbox/data/data/files;当然了你前面设置的映射路径可能跟我的不一样,所以根据自己的实际情况来判断。
下一步先 停止容器,删除容器,将 files 中的所有文件 复制 / 移动 到 前面确定存储位置的文件夹下,例如我的文件都要移动到 /data/files 下。
接着让我们回到 /app/kodbox/data/data 目录(以自己实际目录为准),删除files目录,建立软链接名称为:files,指定路径为 /data/files ;宝塔很创建软链接很方便
如果没有宝塔就执行命令(命令行内容根据自己的实际情况修改):
ln -s /data/files files
接下来修改 “docker-compose.yml” 配置文件,在 services.app.volumes 中添加存储映射路径,因为刚才我将 /app/kodbox/data/data 中的 files 改到了 /data/files,也就是说容器中的 /var/www/html/data/files 现在对应的宿主机路径是 /data/files;容器映射路径也需要添加配置,否则会无法访问路径,所以添加以下内容在 services.app.volumes 中:
- "/data/files:/var/www/html/data/files"
./run.sh 启动容器。
然后也是上传文件试试,到宿主机看看文件是否存储在自己的指定位
现在也算是 安装、配置 完成了,局域网传个大文件试试看能否跑满千兆的速度
也算是跑满了千兆的网速,挺好的,顺便提醒一下如果你的局域网无法跑满速,但是其他传输文件的方式可以跑满速,那可能是版本问题,之前我装过1.3.*版本 速度无法达到极限
如果你前面上传大文件 (超过4GB) 都没问题,那就跳过这里。
真的是无语了,没想到还遇到这个问题,传个2GB不到的文件显示上传失败,
(413 Request Entity Too Large)错误截图如下所示:
按照 官方的说法 是需要修改 上传分片大小 为5MB,原本默认是0.5MB。。。。。[老人地铁手机.jpg] 你到是给我在安装的时候就默认设置为 5MB 啊!喂!!!
无语归无语,还是要按照他们说的修改,修改完后保存,退出登录然后再重新登录(不要问我为什么要重新登录),之后再尝试一下上传 10GB 大小的视频文件没问题了,再试试比较极端的 50GB 大小测试文件,也能成功
到这里为止算是安装结束了,其中也踩了不少的坑,回过头来再看看这篇文章好像写的内容有的复杂了,就当做是踩坑记录吧。我在文章的末尾放了很多的友情链接,如果有疑问可以查看。
接下来剩下的功能:包括 移动APP端 及 PC客户端 的使用 就留给大家自己去体验吧。
友情链接:
kodcloud (可道云) 官网:https://kodcloud.com
kodcloud (可道云) 官方操作文档:https://docs.kodcloud.com/setup
kodcloud (可道云) 官方Docker镜像:https://hub.docker.com/r/kodcloud/kodbox
kodcloud (可道云) 官方GitHub:https://github.com/kalcaddle/kodbox
kodcloud (可道云) 官方论坛:https://bbs.kodcloud.com
kodcloud 存储设置及磁盘RAID阵列管理:https://docs.kodcloud.com/guide/1.1
知乎【Docker系列】私人云盘kodbox:https://zhuanlan.zhihu.com/p/606724405
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。