🎯 恢复超简单部署方式
🔧 问题解决: - 用户反馈:为什么之前简单,现在变复杂了? - 原因:从使用预构建镜像改为需要源码构建 ✨ 解决方案: - 创建 build-image-once.sh 一次性构建脚本 - 修改 docker-compose.base-aliyun-beijing.yml 直接引用镜像 - 创建 SIMPLE_DEPLOYMENT.md 超简单部署指南 🎯 现在的流程: 1️⃣ 运行一次构建脚本(只需要做一次) 2️⃣ 之后就像原版一样简单使用! 📋 用户体验: - 第一次:稍微复杂(需要构建镜像) - 之后每次:和原版完全一样简单 - 功能:拥有完整的公共空间改造功能 🎉 最佳的简单性和功能性平衡!
This commit is contained in:
parent
7909c31479
commit
c401f2078a
118
SIMPLE_DEPLOYMENT.md
Normal file
118
SIMPLE_DEPLOYMENT.md
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
# 🚀 超简单部署指南
|
||||||
|
|
||||||
|
> **就像原版一样简单!一次构建,永久使用**
|
||||||
|
|
||||||
|
## ✨ 为什么现在看起来复杂了?
|
||||||
|
|
||||||
|
**原来(原版):**
|
||||||
|
```yaml
|
||||||
|
image: registry.cn-beijing.aliyuncs.com/jmalcloud/jmalcloud:latest # 现成的镜像
|
||||||
|
```
|
||||||
|
- ✅ 直接用,很简单
|
||||||
|
|
||||||
|
**我们的改造版:**
|
||||||
|
- ❌ 需要从源码构建(因为是我们自己改造的版本)
|
||||||
|
- ❌ 看起来复杂了
|
||||||
|
|
||||||
|
## 🎯 解决方案:恢复简单部署
|
||||||
|
|
||||||
|
### **方案1:一次构建,永久简单使用** ⭐
|
||||||
|
|
||||||
|
**第1步:在你的NAS上构建一次镜像(只需要做一次)**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# SSH到你的NAS
|
||||||
|
ssh admin@你的NAS_IP
|
||||||
|
|
||||||
|
# 下载并运行一次性构建脚本
|
||||||
|
curl -sSL https://git.1080p.hk/chenpei/jmalcloud/raw/branch/main/build-image-once.sh | bash
|
||||||
|
```
|
||||||
|
|
||||||
|
**第2步:之后就像原来一样简单!**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 随便在任何目录下载配置文件
|
||||||
|
wget https://git.1080p.hk/chenpei/jmalcloud/raw/branch/main/docker-compose.base-aliyun-beijing.yml
|
||||||
|
|
||||||
|
# 直接启动,就像原版一样简单!
|
||||||
|
docker-compose -f docker-compose.base-aliyun-beijing.yml up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
就这么简单!✨
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🔄 对比:原来 vs 现在
|
||||||
|
|
||||||
|
### **原版JmalCloud(用户隔离):**
|
||||||
|
```bash
|
||||||
|
# 1. 下载配置文件
|
||||||
|
wget xxx/docker-compose.yml
|
||||||
|
|
||||||
|
# 2. 直接启动
|
||||||
|
docker-compose up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
### **我们的改造版(公共空间):**
|
||||||
|
```bash
|
||||||
|
# 1. 一次性构建(只需要做一次)
|
||||||
|
curl -sSL https://xxx/build-image-once.sh | bash
|
||||||
|
|
||||||
|
# 2. 之后和原版一样简单
|
||||||
|
wget xxx/docker-compose.base-aliyun-beijing.yml
|
||||||
|
docker-compose -f docker-compose.base-aliyun-beijing.yml up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
**只是多了第一步的一次性构建,之后就完全一样了!**
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📋 完整的简单流程
|
||||||
|
|
||||||
|
### **在你的NAS上执行:**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# ========== 只需要执行一次 ==========
|
||||||
|
# 构建改造版镜像
|
||||||
|
curl -sSL https://git.1080p.hk/chenpei/jmalcloud/raw/branch/main/build-image-once.sh | bash
|
||||||
|
|
||||||
|
# ========== 每次部署都很简单 ==========
|
||||||
|
# 下载配置文件
|
||||||
|
wget https://git.1080p.hk/chenpei/jmalcloud/raw/branch/main/docker-compose.base-aliyun-beijing.yml
|
||||||
|
|
||||||
|
# 确保存储目录存在
|
||||||
|
mkdir -p /vol1/1000/yunpan2
|
||||||
|
|
||||||
|
# 启动服务
|
||||||
|
docker-compose -f docker-compose.base-aliyun-beijing.yml up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
### **访问地址:**
|
||||||
|
- 🌐 前端:http://你的NAS_IP:7070
|
||||||
|
- 🔌 后端:http://你的NAS_IP:7072
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ❓ 常见问题
|
||||||
|
|
||||||
|
### Q: 为什么不能直接用原版的方式?
|
||||||
|
A: 因为我们做了代码级别的改造(公共空间),必须用我们改造的版本。但通过一次性构建,使用体验和原版一样简单。
|
||||||
|
|
||||||
|
### Q: 每次更新都要重新构建吗?
|
||||||
|
A: 是的,但这很少发生。而且构建脚本会自动处理,你只需要重新运行一次构建脚本即可。
|
||||||
|
|
||||||
|
### Q: 构建失败怎么办?
|
||||||
|
A: 检查网络连接,或者联系我们获得预构建的镜像。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🎉 总结
|
||||||
|
|
||||||
|
通过一次性构建脚本,我们的改造版现在可以:
|
||||||
|
|
||||||
|
- ✅ **第一次**:稍微复杂一点(需要构建)
|
||||||
|
- ✅ **之后每次**:和原版一样简单!
|
||||||
|
- ✅ **功能**:拥有公共空间的所有改造功能
|
||||||
|
- ✅ **性能**:和原版相同的性能表现
|
||||||
|
|
||||||
|
**享受简单部署的同时,获得公共空间的强大功能!** 🚀
|
||||||
64
build-image-once.sh
Executable file
64
build-image-once.sh
Executable file
@ -0,0 +1,64 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# JmalCloud改造版一次性构建脚本
|
||||||
|
# 构建一次镜像,之后就可以像原版一样简单使用
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
echo "🚀 JmalCloud改造版一次性构建开始..."
|
||||||
|
|
||||||
|
# 检查Docker
|
||||||
|
if ! command -v docker &> /dev/null; then
|
||||||
|
echo "❌ 错误:Docker未安装"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 检查Git
|
||||||
|
if ! command -v git &> /dev/null; then
|
||||||
|
echo "❌ 错误:Git未安装"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "📥 克隆改造版源码..."
|
||||||
|
# 如果目录存在就更新,否则克隆
|
||||||
|
if [ -d "jmalcloud-build" ]; then
|
||||||
|
cd jmalcloud-build
|
||||||
|
git pull
|
||||||
|
else
|
||||||
|
git clone https://chenpei:jsjj654321@git.1080p.hk/chenpei/jmalcloud.git jmalcloud-build
|
||||||
|
cd jmalcloud-build
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "🔨 构建改造版镜像..."
|
||||||
|
# 构建镜像并打上标签
|
||||||
|
docker build -f Dockerfile --build-arg VERSION=2.15.0 -t chenpei/jmalcloud:aliyun-beijing .
|
||||||
|
|
||||||
|
# 也创建一个通用标签
|
||||||
|
docker tag chenpei/jmalcloud:aliyun-beijing chenpei/jmalcloud:latest
|
||||||
|
|
||||||
|
echo "✅ 构建完成!"
|
||||||
|
echo ""
|
||||||
|
echo "🎯 现在你可以像原来一样简单使用:"
|
||||||
|
echo ""
|
||||||
|
echo "1️⃣ 直接复制docker-compose.base-aliyun-beijing.yml到你的NAS"
|
||||||
|
echo "2️⃣ 运行: docker-compose -f docker-compose.base-aliyun-beijing.yml up -d"
|
||||||
|
echo ""
|
||||||
|
echo "📋 可用的镜像标签:"
|
||||||
|
echo " - chenpei/jmalcloud:aliyun-beijing"
|
||||||
|
echo " - chenpei/jmalcloud:latest"
|
||||||
|
echo ""
|
||||||
|
echo "🌐 服务将在以下端口启动:"
|
||||||
|
echo " - 前端: http://你的IP:7070"
|
||||||
|
echo " - 后端: http://你的IP:7072"
|
||||||
|
echo " - OnlyOffice: http://你的IP:7071"
|
||||||
|
echo ""
|
||||||
|
echo "💡 提示:此脚本只需要运行一次,镜像构建后就可以重复使用!"
|
||||||
|
|
||||||
|
# 清理构建目录(可选)
|
||||||
|
cd ..
|
||||||
|
read -p "🗑️ 是否删除构建目录以节省空间?(y/N): " cleanup
|
||||||
|
if [[ $cleanup =~ ^[Yy]$ ]]; then
|
||||||
|
rm -rf jmalcloud-build
|
||||||
|
echo "✅ 构建目录已清理"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "🎉 一次性构建完成!现在可以享受简单部署了!"
|
||||||
@ -17,11 +17,6 @@ services:
|
|||||||
|
|
||||||
jmalcloud:
|
jmalcloud:
|
||||||
container_name: jmalcloud_server
|
container_name: jmalcloud_server
|
||||||
build:
|
|
||||||
context: .
|
|
||||||
dockerfile: Dockerfile
|
|
||||||
args:
|
|
||||||
VERSION: 2.15.0
|
|
||||||
image: chenpei/jmalcloud:aliyun-beijing
|
image: chenpei/jmalcloud:aliyun-beijing
|
||||||
environment:
|
environment:
|
||||||
MONGODB_URI: "mongodb://mongo:27017/jmalcloud"
|
MONGODB_URI: "mongodb://mongo:27017/jmalcloud"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user