【Docker项目实战】使用Docker部署JmalCloud个人网盘

简介: 【4月更文挑战第15天】使用Docker部署JmalCloud个人网盘

一、JmalCloud介绍

1.1 JmalCloud简介

JmalCloud 是一款私有云存储网盘项目,能够简单安全管理您的云端文件。

1.2 JmalCloud优点

  • ✅ 支持OSS,阿里云OS、腾讯云OSS和MinIO
  • ✅ 支持图片,音频,视频等文件的在线预览
  • ✅ 支持Word、Excel、PPT、流程图和思维导图的编辑和预览
  • ✅ 支持x86、arm64(Centos/Debian/Ubuntu/macOS)
  • ✅ 提供强大的在线文本编辑器
  • ✅ 支持超大文件上传,断点续传
  • ✅ 支持WebDAV

1.3 JmalCloud使用场景

  • 个人云存储:您可以将个人文件存储在 JmalCloud 中,随时随地访问和管理这些文件。您可以上传、下载、删除、分享文件,方便地备份和恢复个人数据。
  • 团队协作:JmalCloud 支持团队云存储,多人可以共享文件夹和文件,并进行实时协作。团队成员可以共同编辑文档、表格、演示文稿等,提高团队工作效率。
  • 文件同步:JmalCloud 支持将本地文件夹与云端文件夹进行同步,确保文件的安全备份和同步更新。您可以设置自动同步,使得本地文件与云端文件保持一致。
  • 多端访问:您可以通过 JmalCloud 的网页端、手机端和客户端进行文件访问和管理。无论是在办公室、家中还是在路上,都可以随时随地查看和修改文件。
  • 文件分享:您可以将 JmalCloud 中的文件分享给其他人,无需下载和发送文件,方便快捷。您可以设置分享链接的权限和有效期,保护文件的安全性。

二、本地环境介绍

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为centos7.6。
hostname IP地址 操作系统版本 Docker版本
jeven 192.168.3.166 centos 7.6 2 20.10.17

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署JmalCloud 个人网盘。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。
[root@jeven ~]# systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2024-01-29 01:31:05 CST; 1 day 14h ago
     Docs: https://docs.docker.com
 Main PID: 9559 (dockerd)
    Tasks: 50
   Memory: 1.9G
   CGroup: /system.slice/docker.service

3.2 检查Docker版本

检查Docker版本
[root@jeven ~]# docker -v
Docker version 20.10.17, build 100c701

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。
[root@jeven ~]# docker compose version
Docker Compose version v2.6.0

四、一键部署方式

4.1 克隆项目到本地

项目地址: https://gitee.com/jmal/jmal-cloud-server.git,克隆项目到本地或服务器。
git clone --depth=1 https://gitee.com/jmal/jmal-cloud-server.git

4.2 进入源码目录

检查JmalCloud源码目录
[root@jeven ~]# tree -L 2 jmal-cloud-server/
jmal-cloud-server/
├── docker
│   ├── Dockerfile
│   ├── ip2region.xdb
│   ├── jmalcloud
│   ├── nginx
│   └── www
├── docker-compose.example.yml
├── docker-compose.yml
├── Dockerfile
├── jc.sh
├── LICENSE
├── pom.xml
├── README.md
├── release-www.sh
├── src
│   ├── main
│   └── test
└── www
    └── releases

9 directories, 10 files
进入目录jmal-cloud-server
cd jmal-cloud-server

4.3 一键安装

./jc.sh install

在这里插入图片描述

  • 更新JmalCloud方法

./jc.sh pull
./jc.sh update

4.4 访问JmalCloud网盘

访问地址: http://192.168.3.166:7070,将IP替换为自己服务器IP地址。如果无法访问,注意防火墙是否设置,如果是云服务器,则需要设置放行安全组端口。

在这里插入图片描述

注册账号,自定义设置即可,进入到JmalCloud网盘首页。

在这里插入图片描述

上传本地文档操作

在这里插入图片描述

五、自定义部署JmalCloud

5.1 下载JmalCloud镜像

从docker hub拉取PicoShare镜像
[root@jeven ~]# docker pull  registry.cn-guangzhou.aliyuncs.com/jmalcloud/jmalcloud:2.2.35
2.2.35: Pulling from jmalcloud/jmalcloud
Digest: sha256:75a4f949585efa132ed3b9cf09427c72d4382af00f8bcf1c3f73561cd42e5639
Status: Image is up to date for registry.cn-guangzhou.aliyuncs.com/jmalcloud/jmalcloud:2.2.35
registry.cn-guangzhou.aliyuncs.com/jmalcloud/jmalcloud:2.2.35

5.2 创建部署目录

创建部署目录/data/jmalcloud
mkdir -p /data/jmalcloud  && cd /data/jmalcloud

5.2 编辑docker-compose.yaml文件

使用docker-cli方式部署,执行命令如下:
docker run \
--restart=always \
--name jmalcloud \
-p 9070:80 \
-p 9071:8080 \
-p 9072:8088 \
-p 27017:27017 \
-v /data/jmalcloud/files/:/jmalcloud/files/ \
-v /data/jmalcloud/db/:/data/db/ \
-d registry.cn-guangzhou.aliyuncs.com/jmalcloud/jmalcloud:2.2.35
本次实践部署使用docker compose方式,编辑docker-compose.yaml文件,可自行修改密码和映射端口。
version: '3'
services:
  jmalcloud:
    image: registry.cn-guangzhou.aliyuncs.com/jmalcloud/jmalcloud:2.2.35
    restart: always
    ports:
      - 9070:80
      - 9071:8080
      - 9072:8088
      - 27017:27017
    volumes:
      - /data/jmalcloud/files/:/jmalcloud/files/
      - /data/jmalcloud/db/:/data/db/


5.3 创建JmalCloud 容器

使用docker-compose.yaml文件创建JmalCloud 容器
docker compose up -d

在这里插入图片描述

5.4 检查JmalCloud容器状态

检查JmalCloud容器状态,确保JmalCloud容器正常启动。
[root@jeven jmalcloud]# docker compose ps
NAME                    COMMAND                  SERVICE             STATUS              PORTS
jmalcloud-jmalcloud-1   "/bin/sh -c '/usr/bi…"   jmalcloud           running             0.0.0.0:9070->80/tcp, 0.0.0.0:9071->8080/tcp, 0.0.0.0:9072->8088/tcp, 0.0.0.0:27017->27017/tcp, :::9070->80/tcp, :::9071->8080/tcp, :::9072->8088/tcp, :::27017->27017/tcp

5.5 检查JmalCloud容器日志

检查JmalCloud容器运行日志,确保JmalCloud服务正常运行。
[root@jeven jmalcloud]# docker compose logs
jmalcloud-jmalcloud-1  | about to fork child process, waiting until server is ready for connections.
jmalcloud-jmalcloud-1  | forked process: 9
jmalcloud-jmalcloud-1  | child process started successfully, parent exiting
jmalcloud-jmalcloud-1  |
jmalcloud-jmalcloud-1  |   .   ____          _            __ _ _
jmalcloud-jmalcloud-1  |  /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
jmalcloud-jmalcloud-1  | ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
jmalcloud-jmalcloud-1  |  \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
jmalcloud-jmalcloud-1  |   '  |____| .__|_| |_|_| |_\__, | / / / /
jmalcloud-jmalcloud-1  |  =========|_|==============|___/=/_/_/_/
jmalcloud-jmalcloud-1  |  :: Spring Boot ::                (v2.7.0)
jmalcloud-jmalcloud-1  |
[root@jeven jmalcloud]#

在这里插入图片描述

六、访问JmalCloud首页

6.1 进入JmalCloud登录页

访问地址: http://192.168.3.166:9070,将IP替换为自己服务器IP地址,进入到JmalCloud首页。如果无法访问,则检查服务器防火墙是否设置,云服务器的安全组端口是否放行等。自定义注册账号,进入JmalCloud登录页。

在这里插入图片描述

6.2 访问JmalCloud首页

填写之前在docker-compose.yaml中自定义的密码,进入JmalCloud首页。

在这里插入图片描述

在这里插入图片描述

七、JmalCloud的基本使用

7.1 上传文件

点击上传文件选项,将本地文件上传到JmalCloud。

在这里插入图片描述

在这里插入图片描述

7.2 在线浏览文件

点击上传文件,在线浏览文件。

在这里插入图片描述

7.3 分享文件

鼠标右键点击文件,选择分享,将分享链接发送到其他电脑浏览器。

在这里插入图片描述

在这里插入图片描述

7.4 编辑文档

点击基本设置,进入JmalCloud后台管理页面。

在这里插入图片描述

在JmalCloud后台管理页面,网站设置——文档——写文章,进入文档编辑页面。

在这里插入图片描述

编辑文章内容,点击发表即可。

在这里插入图片描述

7.5 访问JmalCloud博客平台

访问地址: http://192.168.3.166:9071/,将IP替换为自己服务器IP地址,进入到JmalCloud博客平台,可以浏览刚才编辑发表的博文。

在这里插入图片描述

在这里插入图片描述

八、总结

JmalCloud个人网盘是一款功能强大且用户友好的网盘系统。它具有漂亮的界面,适合新手使用,并且非常容易部署。该系统支持编辑和预览多种文件格式,包括Word、Excel、PPT、流程图和思维导图等,在学习和工作中非常实用。此外,JmalCloud还提供了一个内置的博客系统,方便用户整理和管理技术文档,构建个人的技术知识库。对于需要免费的NAS系统的用户来说,JmalCloud是一个值得尝试的选择。
相关文章
|
12天前
|
JSON JavaScript 测试技术
【Docker项目实战】使用Docker部署PPTist在线演示文稿应用
【10月更文挑战第9天】使用Docker部署PPTist在线演示文稿应用
23 1
【Docker项目实战】使用Docker部署PPTist在线演示文稿应用
|
2天前
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
46 2
|
3天前
|
弹性计算 数据库连接 Nacos
阿里云ECS服务器在docker中部署nacos
docker pull nacos 失败,docker部署nacos遇到的问题,nacos数据库连接,nacos端口映射
26 1
|
11天前
|
Web App开发 前端开发 测试技术
【Docker项目实战】使用docker部署tabler后台模版
【10月更文挑战第10天】使用docker部署tabler后台模版
27 0
【Docker项目实战】使用docker部署tabler后台模版
|
13天前
|
消息中间件 编解码 Docker
【Docker项目实战】Docker部署RabbitMQ消息中间件
【10月更文挑战第8天】Docker部署RabbitMQ消息中间件
31 0
【Docker项目实战】Docker部署RabbitMQ消息中间件
|
7天前
|
运维 Kubernetes 监控
掌握Docker容器化技术:构建、部署与管理的高效实践
【10月更文挑战第14天】掌握Docker容器化技术:构建、部署与管理的高效实践
24 0
|
9天前
|
关系型数据库 数据库 PostgreSQL
在docker上部署postgresSQL主从
通过以上步骤,我们完成了在Docker环境中部署PostgreSQL主从复制的基本配置。请注意,实际生产环境中还需考虑安全性增强(如SSL加密)、监控、自动故障切换等高级配置。此外,根据具体的业务需求和规模,可能还需要考虑使用更专业的解决方案或工具,如Patroni、PgBouncer等,来进一步提升数据库集群的稳定性和效率。
18 0
|
6天前
|
存储 Docker 容器
docker中挂载数据卷到容器
【10月更文挑战第12天】
26 5
|
2天前
|
存储 关系型数据库 MySQL
|
3天前
|
存储 Docker 容器
docker中挂载数据卷到容器
【10月更文挑战第13天】
10 2