# Docker Compose 部署指南
> **重要**:所有Docker Compose文件已更新为使用你的JmalCloud公共空间改造版本
## 📋 可用的部署配置
| 文件名 | 用途 | 特点 |
|--------|------|------|
| `docker-compose.git.yml` | **Git构建版(推荐)** | ✅ 从Git仓库自动构建
✅ 最新的改造版本 |
| `docker-compose.base.yml` | **基础版本** | ✅ 标准配置
✅ 适合大部分用户 |
| `docker-compose.base-git.yml` | **简化Git版本** | ✅ 精简配置
✅ Git自动构建 |
| `docker-compose.base-aliyun-beijing.yml` | **阿里云北京** | ✅ 针对阿里云北京优化
✅ Git自动构建 |
| `docker-compose.base-aliyun-guangzhou.yml` | **阿里云广州** | ✅ 针对阿里云广州优化
✅ Git自动构建 |
| `docker-compose.base.proxy.yml` | **代理版本** | ✅ 支持代理环境
✅ Git自动构建 |
| `docker-compose.example.yml` | **模板配置** | ✅ 环境变量模板
✅ 适合自定义部署 |
## 🚀 快速部署
### 方案1:推荐部署(最简单)
```bash
# 使用一键部署脚本
./build-from-git.sh
```
### 方案2:选择特定配置
```bash
# 基础版本
docker-compose -f docker-compose.base.yml up -d --build
# Git版本
docker-compose -f docker-compose.git.yml up -d --build
# 阿里云北京
docker-compose -f docker-compose.base-aliyun-beijing.yml up -d --build
# 阿里云广州
docker-compose -f docker-compose.base-aliyun-guangzhou.yml up -d --build
```
## ⚙️ 主要更新内容
### ✅ 全面替换镜像源
- **原版**:`jmal/jmalcloud:latest`
- **改造版**:从 `https://git.1080p.hk/chenpei/jmalcloud` 自动构建
### ✅ 统一配置标准
- **Java内存**:`-Xms512m -Xmx2g` ~ `-Xmx4g`
- **MongoDB版本**:升级到 `mongo:7.0`
- **健康检查**:添加完整的健康检查机制
- **环境变量**:标准化所有环境变量
### ✅ 新增功能配置
- **公共空间模式**:所有配置都支持公共共享文件空间
- **文件监控**:`FILE_MONITOR=true`
- **精确搜索**:`EXACT_SEARCH=false`
- **加密配置**:自动生成加密密钥和盐值
## 🔧 环境变量说明
| 变量名 | 默认值 | 说明 |
|--------|--------|------|
| `MONGODB_URI` | `mongodb://mongo:27017/jmalcloud` | MongoDB连接地址 |
| `JVM_OPTS` | `-Xms512m -Xmx2g` | Java虚拟机参数 |
| `FILE_ROOT_DIR` | `/jmalcloud/files` | 文件存储根目录 |
| `EXACT_SEARCH` | `false` | 是否启用精确搜索 |
| `FILE_MONITOR` | `true` | 是否启用文件监控 |
| `ENCRYPTION_SECRET_KEY` | `""` | 加密密钥(自动生成) |
| `ENCRYPTION_SALT` | `""` | 加密盐值(自动生成) |
## 🌐 访问地址
部署成功后,你可以通过以下地址访问:
- 🌐 **前端界面**: http://localhost:7070
- 🔌 **后端API**: http://localhost:7072
- 📄 **OnlyOffice**: http://localhost:7071
## 🔧 管理命令
```bash
# 查看服务状态
docker-compose -f [配置文件] ps
# 查看日志
docker-compose -f [配置文件] logs -f
# 停止服务
docker-compose -f [配置文件] down
# 重启服务
docker-compose -f [配置文件] restart
# 重新构建
docker-compose -f [配置文件] up -d --build --force-recreate
```
## ⚠️ 重要提示
1. **首次部署**:建议使用 `./build-from-git.sh` 脚本
2. **数据目录**:确保 `./docker/jmalcloud/` 目录有适当权限
3. **端口冲突**:如有端口冲突,请修改配置文件中的端口映射
4. **内存配置**:根据服务器配置调整 `JVM_OPTS` 参数
5. **Git认证**:构建时需要访问Git仓库,确保网络连通性
## 📞 支持
如果遇到问题:
1. 查看容器日志:`docker-compose -f [配置文件] logs`
2. 检查服务状态:`docker-compose -f [配置文件] ps`
3. 重新构建:`docker-compose -f [配置文件] up -d --build --force-recreate`