Docker 部署 Reubah 图片文档格式转换工具 🖼️


📋 目录导航


🎯 项目简介

Reubah 是一款基于浏览器的图片文档格式转换工具,提供简单易用的文件格式转换服务。这款工具最初是英文版本,现在已经进行了汉化处理,为中文用户提供了更好的使用体验。✨Reubah 的设计理念是让文件格式转换变得简单高效,同时保护用户隐私。与许多在线转换工具不同,Reubah 可以在本地部署,确保您的文件不会上传到第三方服务器,提供了更高的安全性。


✨ 核心特性

特性类别 功能描述 优势
🖼️ 多格式图片转换 支持 JPG, PNG, WEBP, GIF, BMP, SVG, ICO, TIFF 等多种图片格式互转 一站式解决所有图片格式转换需求
📄 文档格式转换 支持 PDF, Word, PowerPoint, Excel 等多种文档格式转换 办公文档高效转换,提升工作效率
🌐 本地化处理 纯浏览器端处理,文件不会上传到服务器 保护隐私安全,防止数据泄露
🎨 高质量转换 保持原始文件质量,提供可调节的输出参数 确保转换后文件质量不受损失
⚡ 快速转换 高效的转换算法,确保快速完成转换任务 节省时间,提高工作效率
📱 响应式设计 完美适配桌面和移动设备,随时随地使用 跨设备使用,灵活方便
🔄 批量处理 支持多个文件同时转换,提高工作效率 批量处理大量文件,节省时间
🐳 容器化部署 基于 Docker 的一键部署,简单易用 快速部署,环境隔离,易于维护

🐳 一、Docker 部署 Reubah

1. 创建部署目录和 docker-compose.yml 文件 📁

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
mkdir -p /mnt/mydisk/home/reubah && cd /mnt/mydisk/home/reubah

cat > docker-compose.yml <<'EOF'
version: '3.8'

services:
reubah:
container_name: reubah
image: swr.cn-north-4.myhuaweicloud.com/firfe/reubah:2025.06.11
network_mode: bridge
restart: always
logging:
options:
max-size: 1m # 📏 日志文件最大大小
max-file: "1" # 🔢 保留的日志文件数量
ports:
- "8681:8081" # 🔌 主机端口:容器端口
volumes:
- ./doc-temp:/tmp # 💾 临时文件存储目录
environment:
- PUID=1000 # 👤 用户ID
- PGID=1000 # 👥 组ID
- TZ=Asia/Shanghai # 🕐 时区设置
EOF

2. 拉取镜像并启动容器 🚀

1
docker-compose up -d

🚀 二、使用 Reubah

1. 访问 Web 界面 💻

  • 本地访问: http://localhost:8681
  • 域名访问: https://reubah.example.com(配置反向代理后)

2. 文件转换功能 🔄

Reubah 支持多种格式转换,以下是主要功能:

图片格式转换 🖼️:

  • JPG ⇄ PNG ⇄ WEBP ⇄ GIF ⇄ BMP ⇄ SVG ⇄ ICO ⇄ TIFF

文档格式转换 📄:

  • PDF ⇄ Word (DOC/DOCX)
  • PDF ⇄ PowerPoint (PPT/PPTX)
  • PDF ⇄ Excel (XLS/XLSX)
  • 文本文件格式转换 (TXT, RTF 等)

3. 使用步骤 📋

  1. 打开浏览器访问上述地址
  2. 点击上传按钮选择要转换的文件
  3. 选择目标输出格式和质量参数
  4. 点击转换按钮开始处理
  5. 转换完成后下载结果文件

4. 批量处理 📦

  • 多文件同时处理 🚀 - 支持一次性上传多个文件进行转换
  • 统一设置 🎯 - 可以对所有文件应用相同的输出设置
  • 批量下载 📥 - 支持一键下载所有转换后的文件
  • 格式一致性 🔄 - 确保所有输出文件格式统一

🌐 三、Nginx 反向代理配置

访问地址示例:https://reubah.example.com

1. 创建 Nginx 配置文件 🔧

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
mkdir -p /etc/nginx/conf.d && \
cat > /etc/nginx/conf.d/reubah.conf <<'EOF'
server {
listen 443 ssl;
listen [::]:443 ssl;

server_name reubah.example.com; # 🌐 请替换为您的实际域名

# SSL 证书配置
ssl_certificate /etc/nginx/ssl/cert.pem;
ssl_certificate_key /etc/nginx/ssl/key.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384;

# 安全头部
add_header X-Frame-Options DENY;
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload";

# 文件上传大小限制
client_max_body_size 100M;

location / {
proxy_pass http://localhost:8681;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;

# 超时设置
proxy_connect_timeout 300s;
proxy_send_timeout 300s;
proxy_read_timeout 300s;
}

# 错误页面处理
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
internal;
}
}
EOF

2. 测试并重载 Nginx 🔄

1
sudo nginx -t && sudo systemctl reload nginx

🔧 四、容器维护命令

1. Docker Compose 命令 🐳

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# 进入项目目录
cd /mnt/mydisk/home/reubah

# 停止并删除容器
docker-compose down

# 拉取最新镜像
docker-compose pull

# 启动容器
docker-compose up -d

# 查看服务状态
docker-compose ps

# 查看服务日志
docker-compose logs

# 跟踪服务日志
docker-compose logs -f

# 完整升级流程
docker-compose down && \
docker-compose pull && \
docker-compose up -d && \
docker image prune -f

2. Docker 容器命令 📦

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# 查看所有容器名称
docker ps -a --format "{{.Names}}"

# 查看运行中容器
docker ps

# 停止/启动/重启容器
docker stop reubah # 停止容器
docker start reubah # 启动容器
docker restart reubah # 重启容器

# 删除容器
docker rm reubah # 删除已停止容器
docker rm -f reubah # 强制删除运行中容器

# 进入容器Shell
docker exec -it reubah sh # 使用sh进入容器
docker exec -it reubah bash # 使用bash进入容器

# 查看容器详情和资源使用
docker inspect reubah # 查看详细配置
docker stats reubah # 实时资源监控

## 容器日志管理
docker logs reubah # 查看日志
docker logs -f reubah # 实时跟踪日志
docker logs --tail 100 reubah # 查看最后100行
docker logs -t reubah # 带时间戳的日志

3. Docker 镜像管理 📀

1
2
3
4
docker images                  # 列出所有镜像
docker rmi <image_name:tag> # 删除指定镜像
docker image prune -f # 清理悬空镜像
docker image prune -a -f # 清理所有未使用镜像

🌟 启航转换,创意无限

通过本文档,你已经成功使用 Docker 部署了 Reubah 图片文档格式转换工具,并借助 Nginx 反向代理实现了安全便捷的远程访问。现在,你可以:

🖼️ 无缝转换 轻松处理各种图片和文档格式,满足不同场景的使用需求
🔒 隐私安全 本地化处理确保文件不上传第三方,保护重要数据安全
高效便捷 批量处理和快速转换大幅提升工作效率,节省宝贵时间

转换之路,是一场与格式兼容共舞的技术艺术。愿 Reubah 成为你得力的格式转换助手,陪伴你在每一次文件处理和格式转换的重要时刻。

从现在开始,随心转换,创意无限——构建你高效便捷的文件处理工作流吧!🎨


📌 持续迭代:建议关注 Reubah 官方更新,及时获取新功能与优化。
🐛 反馈与互助:使用中如有疑问或建议,可前往 GitHub Issues 提出。

祝你转换愉快,工作高效!🎉