标签搜索

目 录CONTENT

文章目录

VPS部署一个私有云存储网盘项目-JmalCloud

yyzq
2025-09-24 / 0 评论 / 0 点赞 / 11 阅读 / 1,361 字

前言

飞牛云NAS,目前只支持word,excle,ppt文档的在线预览,那么部署今天JmalCloud这个项目可以实现在线编辑的功能,同时也支持DWG文件的预览

项目简介

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

项目图片

主界面
image-1758705322146

image-1758705981911

image-1758705992950

word在线编辑
image-1758705363513
excle在线编辑
image-1758705411026
ppt在线编辑
image-1758705488762
还有其他常见格式的预览

🚀 功能特点

✅ 支持OSS,阿里云OS、腾讯云OSS和MinIO

✅ 支持图片,音频,视频等文件的在线预览

✅ 支持Word、Excel、PPT、流程图和思维导图的编辑和预览

✅ 支持x86、arm64(Centos/Debian/Ubuntu/macOS)

✅ 提供强大的在线文本编辑器

✅ 支持超大文件上传,断点续传

✅ 支持WebDAV

部署方法

使用Docker安装

本教程使用docker的方式安装部署,简单便捷
164b6ac419e23bc5390dc46601a202bf

准备条件

1)一台服务器

我们使用莱卡云VPS和飞牛云NAS来演示

需要vps的可以看以下信息
莱卡云官网

占用内存情况,建议最低2G内存以上
image-1758706286974

2)本项目使用到的开源项目

https://github.com/jamebal/jmal-cloud-view
更多功能或者二次修改可以访问开源项目地址

3)域名(可选)

域名可以根据自己的需求绑定

① VPS部署

一、Docker环境部署

在vps安装docker和docker-compose
Docker官方安装文档(英文)
https://duan.yyzq.eu.org/docker-001
Docker-Compose官方安装文档(英文)
https://duan.yyzq.eu.org/docker-002
Centos安装Docker和Docker-compose(中文)
https://duan.yyzq.eu.org//03
Ubuntu安装Docker和Docker-compose(中文)
https://duan.yyzq.eu.org//04

推荐直接用一键脚本

docker安装脚本

bash <(curl -sSL https://cdn.jsdelivr.net/gh/SuperManito/LinuxMirrors@main/DockerInstallation.sh)

docker-compose安装脚本

curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose

二、创建docker-compose.yml文件

登录服务器使用root账户执行以下步骤

创建一个目录,并进入此目录

mkdir  jmalcloud;cd jmalcloud 

然后再新建docker-compose.yml

vim docker-compose.yml
services:
  mongo:
    container_name: jmalcloud_mongodb  # MongoDB 容器名称
    image: mongo:4.4  # 使用 MongoDB 4.4 镜像
    environment:
      TZ: "Asia/Shanghai"  # 设置时区为上海
    volumes:
      - ./docker/jmalcloud/mongodb/data/db:/data/db  # 映射数据目录
      - ./docker/jmalcloud/mongodb/backup:/dump  # 映射备份目录
    restart: unless-stopped  # 容器停止时自动重启,除非手动停止
    healthcheck:
      test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"]  # 健康检查命令
      interval: 10s  # 检查间隔时间
      timeout: 5s  # 超时时间
      retries: 3  # 失败重试次数
    command: --wiredTigerCacheSizeGB 0.5  # 设置 WiredTiger 缓存大小为 0.5GB

  jmalcloud:
    container_name: jmalcloud_server  # 主应用容器名称
    image: jmal/jmalcloud:latest  # 使用 jmalcloud 镜像
    environment:
      MONGODB_URI: "mongodb://mongo:27017/jmalcloud"  # MongoDB 数据库连接地址
      TZ: "Asia/Shanghai"  # 设置时区为上海
      JVM_OPTS: "-Xms512m -Xmx4g"  # 设置 JVM 初始内存和最大内存
      ENCRYPTION_SECRET_KEY: ""  # 加密密钥(可选)
      ENCRYPTION_SALT: ""  # 加密盐值(可选)
    volumes:
      - ./docker/jmalcloud/files:/jmalcloud/files/  # 映射文件目录
    restart: unless-stopped  # 容器停止时自动重启,除非手动停止
    ports:
      - 7072:8088  # 映射主应用端口

  nginx:
    container_name: jmalcloud_nginx  # Nginx 容器名称
    image: jmal/jmalcloud-nginx:latest  # 使用 jmalcloud Nginx 镜像
    ports:
      - 7070:80  # 映射 HTTP 服务端口
      - 7071:8089  # 映射另一个服务端口
    environment:
      TZ: "Asia/Shanghai"  # 设置时区为上海
    restart: unless-stopped  # 容器停止时自动重启,除非手动停止
    links:
      - jmalcloud  # 与主应用容器相连接
      - office  # 与 Office 容器相连接

  office: # 可选组件:OnlyOffice 文档服务器
    container_name: jmalcloud_office  # OnlyOffice 容器名称
    image: onlyoffice/documentserver:9.0  # 使用 OnlyOffice 9.0 镜像
    environment:
      TZ: "Asia/Shanghai"  # 设置时区为上海
      JWT_SECRET: "6p6pzUUK0zV9xm1pfRAd32kYfWGskfIw"  # OnlyOffice JWT 密钥
    restart: unless-stopped  # 容器停止时自动重启,除非手动停止

三、执行容器运行命令

docker-compose up -d #运行容器
docker-compose ps  #查看是否开启成功

正常启动如下所示

 docker-compose ps
NAME                IMAGE                           COMMAND                  SERVICE     CREATED       STATUS                   PORTS
jmalcloud_mongodb   mongo:4.4                       "docker-entrypoint.s…"   mongo       2 hours ago   Up 2 hours (unhealthy)   27017/tcp
jmalcloud_nginx     jmal/jmalcloud-nginx:latest     "/docker-entrypoint.…"   nginx       2 hours ago   Up 2 hours               0.0.0.0:7070->80/tcp, [::]:7070->80/tcp, 0.0.0.0:7071->8089/tcp, [::]:7071->8089/tcp
jmalcloud_office    onlyoffice/documentserver:9.0   "/app/ds/run-documen…"   office      2 hours ago   Up 2 hours               80/tcp, 443/tcp
jmalcloud_server    jmal/jmalcloud:latest           "/docker-entrypoint.…"   jmalcloud   2 hours ago   Up 2 hours (healthy)     8089/tcp, 0.0.0.0:7072->8088/tcp, [::]:7072->8088/tcp

四、打开web页面使用

成功以后需要打开自己相应的端口7070)防火墙就可以web端访问了

主界面

http://ip:7070

第一次需要配置管理员信息

② 飞牛云NAS部署

新建项目

jmalcloud

其他步骤参考VPS的教程
正常启动即可
image-1758706469678

绑定域名

如需绑定域名的自行绑定

视频教程

B站

YouTube

绑定域名可以参考
NginxProxyManager
https://duan.yyzq.eu.org//npm-ch

有任何问题可以直接留言或者问我
有任何问题可以直接留言或者问我
有任何问题可以直接留言或者问我

欢迎关注我们的微信公众号!
微信公众号

0

评论区