admin 管理员组

文章数量: 887017

【Docker项目实战】使用Docker部署JmalCloud 个人网盘
  •  一、JmalCloud介绍
    •  1.1 JmalCloud简介
    •  1.2 JmalCloud优点
    •  1.3 JmalCloud使用场景
  •  二、本地环境介绍
    •  2.1 本地环境规划
    •  2.2 本次实践介绍
  •  三、本地环境检查
    •  3.1 检查Docker服务状态
    •  3.2 检查Docker版本
    •  3.3 检查docker compose 版本
  •  四、一键部署方式
    •  4.1 克隆项目到本地
    •  4.2 进入源码目录
    •  4.3 一键安装
    •  4.4 访问JmalCloud网盘
  •  五、自定义部署JmalCloud
    •  5.1 下载JmalCloud镜像
    •  5.2 创建部署目录
    •  5.2 编辑docker-compose.yaml文件
    •  5.3 创建JmalCloud 容器
    •  5.4 检查JmalCloud容器状态
    •  5.5 检查JmalCloud容器日志
  •  六、访问JmalCloud首页
    •  6.1 进入JmalCloud登录页
    •  6.2 访问JmalCloud首页
  •  七、JmalCloud的基本使用
    •  7.1 上传文件
    •  7.2 在线浏览文件
    •  7.3 分享文件
    •  7.4 编辑文档
    •  7.5 访问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。

hostnameIP地址操作系统版本Docker版本
jeven192.168.3.166centos 7.62 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
 Main PID: 9559 (dockerd)
    Tasks: 50
   Memory: 1.9G
   CGroup: /system.slice/docker.service
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.

3.2 检查Docker版本

检查Docker版本

[root@jeven ~]# docker -v
Docker version 20.10.17, build 100c701
  • 1.
  • 2.

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

[root@jeven ~]# docker compose version
Docker Compose version v2.6.0
  • 1.
  • 2.

四、一键部署方式

4.1 克隆项目到本地

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

git clone --depth=1 https://gitee/jmal/jmal-cloud-server.git
  • 1.

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
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.

进入目录jmal-cloud-server

cd jmal-cloud-server
  • 1.

4.3 一键安装

./jc.sh install
  • 1.

  • 更新JmalCloud方法

./jc.sh pull
./jc.sh update
  • 1.
  • 2.
  • 3.

4.4 访问JmalCloud网盘

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

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

上传本地文档操作

五、自定义部署JmalCloud

5.1 下载JmalCloud镜像

从docker hub拉取PicoShare镜像

[root@jeven ~]# docker pull  registry-guangzhou.aliyuncs/jmalcloud/jmalcloud:2.2.35
2.2.35: Pulling from jmalcloud/jmalcloud
Digest: sha256:75a4f949585efa132ed3b9cf09427c72d4382af00f8bcf1c3f73561cd42e5639
Status: Image is up to date for registry-guangzhou.aliyuncs/jmalcloud/jmalcloud:2.2.35
registry-guangzhou.aliyuncs/jmalcloud/jmalcloud:2.2.35
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

5.2 创建部署目录

创建部署目录/data/jmalcloud

mkdir -p /data/jmalcloud  && cd /data/jmalcloud
  • 1.

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-guangzhou.aliyuncs/jmalcloud/jmalcloud:2.2.35
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.

本次实践部署使用docker compose方式,编辑docker-compose.yaml文件,可自行修改密码和映射端口。

version: '3'
services:
  jmalcloud:
    image: registry-guangzhou.aliyuncs/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/



  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.

5.3 创建JmalCloud 容器

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

docker compose up -d
  • 1.

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
  • 1.
  • 2.
  • 3.

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]#
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.

六、访问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是一个值得尝试的选择。

原创作者: u_14664141 转载于: https://blog.51cto/u_14664141/11759714

本文标签: 人网 实战 项目 docker JmalCloud