docker部署kodcloud (可道云) 存储服务过程及注意事项

docker部署kodcloud (可道云) 存储服务过程及注意事项docker 部署 kodcloud 可道云 存储服务过程 踩坑经历及注意事项 可道云 docker 部署

大家好,欢迎来到IT知识分享网。

前言

自己组了台主机做服务器,正好打算部署个nas云存储服务,原本想要在上面装黑群晖,但后面发现有点鸡肋(也有可能是因为docker版的黑群晖不好用吧),用不太习惯,就决定找其他服务来使用,试用了几个不同的服务,例如:ZFile;
但后来发现 可道云 功能更多,而且还有 移动端的APP 与 PC端的客户端 可以用,这里就果断的选择了可道云,免费版限制创建10个用户够用,收费的功能也用不到,就是它了!




kodcloud (可道云) 官方的安装

但如果你想要可道云部署在Docker上,并且数据库使用宿主机的MySQL,那你可以接着往下看:

Docker 自定义部署 kodcloud (可道云)

1.创建数据库

我现在已经在服务器上安装了 MySQL5.7,当然了更高的版本应该也是可以用的,创建一个空数据库来存放 kodcloud 的数据,名字随意了,例如我的数据库名就叫 kodbox 。

2.拉取官方最新版本镜像

接下来要拉取官方的最新镜像(老版本我试过可能无法跑满局域网的千兆),官方镜像点击这里,执行拉取镜像命令:

docker pull kodcloud/kodbox 

不指定版本默认拉取最新版本镜像,拉取成功后查看一下镜像是否拉取成功:

docker images 

有这条就对了

REPOSITORY TAG IMAGE ID CREATED SIZE kodcloud/kodbox latest 8e0d62efa742 2 weeks ago 494MB 

3.创建配置文件

确定好你要创建项目的路径,就比如说我的路径创建在 /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”

docker-compose -f /你yml文件所在的路径/docker-compose.yml up -d 

4.可道云——启动!

在刚才所在的路径输入

./run.sh 
docker ps -a 

5.初始化

5-1. 浏览器 IP+:+端口 打开 kodcloud ,设置管理员账号密码

在这里插入图片描述
在这里插入图片描述





5-2. 如果你的安装有这一步那就选择 MySQL 与 redis,我这里的安装没这一步,redis如果设置“127.0.0.1” 提示 “connection refused”,那将地址修改为:“redis” 试试,如果实在是不想折腾那选择文件缓存也不是不行

在这里插入图片描述

5-3. 登录:

在这里插入图片描述

5-4. 检查缓存方式(选择使用文件缓存跳过这一步):

6.修改文件存储路径

(没需求可以跳过这一步)
我的主机硬盘配置是一个固态硬盘做系统盘,几个氦气机械盘做仓库盘,所以我希望将 docker 与 宿主机 间的项目文件留在固态盘,存储文件全放在机械盘上;
如果你有与我类型的需求但又怕麻烦,可以在 “3.创建配置文件” 的步骤中直接将项目放入到机械盘挂载的目录内,其实这样问题也不大;但我就要折腾一下 。

6-1. 确认存储路径

首先要确认你的 项目所在地文件存储所在地,例如我的项目在 (固态盘) /app/kodcloud 下,存储在(机械盘) /data/files 下,记得授权目录权限,最好是777,可执行:chmod 777 /文件夹路径

6-2-1. 修改存储路径 (方法1)

在 “docker-compose.yml” 文件的 services.app.volumes 中添加存储映射路径,例如将宿主机的 /data/files 挂载到 Docker 的 /df 目录:

- "/data/files:/df" 

停止容器,删除容器

docker rm -f <容器ID 或 容器名称> 

跳过6-2-2、方法2使用后文件传输存在问题,暂时不推荐!!!

6-2-2. 修改存储路径 (方法2)

方法2使用后文件传输存在问题,暂时不推荐!!!

方法1稍微简单点,方法2比较麻烦:

6-2-2-1. 存储路径确认

还是一样要先确定文件希望存储在哪个路径,例如我希望我的文件都存储在宿主机的 /data/files 下,先创建好文件夹;

6-2-2-2. 查找宿主机的 原 文件存储路径

接下来需要了解的一点是 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;当然了你前面设置的映射路径可能跟我的不一样,所以根据自己的实际情况来判断。

6-2-2-3. 移动原存储文件到新的路径

下一步先 停止容器,删除容器,将 files 中的所有文件 复制 / 移动 到 前面确定存储位置的文件夹下,例如我的文件都要移动到 /data/files 下。

方法2使用后文件传输存在问题,暂时不推荐!!!

6-2-2-4. 建立软链接

接着让我们回到 /app/kodbox/data/data 目录(以自己实际目录为准),删除files目录,建立软链接名称为:files,指定路径为 /data/files ;宝塔很创建软链接很方便 在这里插入图片描述
如果没有宝塔就执行命令(命令行内容根据自己的实际情况修改):

ln -s /data/files files 

方法2使用后文件传输存在问题,暂时不推荐!!!

6-2-2-5. 修改 容器配置文件 再启动

接下来修改 “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 启动容器。
然后也是上传文件试试,到宿主机看看文件是否存储在自己的指定位

方法2使用后文件传输存在问题,暂时不推荐!!!

7. 测试体验

7.1 文件传输速度测试
7.2 大文件上传失败问题

按照 官方的说法 是需要修改 上传分片大小 为5MB,原本默认是0.5MB。。。。。[老人地铁手机.jpg] 你到是给我在安装的时候就默认设置为 5MB 啊!喂!!!

在这里插入图片描述

无语归无语,还是要按照他们说的修改,修改完后保存,退出登录然后再重新登录(不要问我为什么要重新登录),之后再尝试一下上传 10GB 大小的视频文件没问题了,再试试比较极端的 50GB 大小测试文件,也能成功

在这里插入图片描述

8. END

知乎【Docker系列】私人云盘kodbox:https://zhuanlan.zhihu.com/p/



免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/104869.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信