Overleaf社区版Docker Compose部署指南
2025-07-06 00:59:59作者:盛欣凯Ernestine
概述
Overleaf是一个流行的在线LaTeX协作编辑平台,本指南将详细介绍如何使用Docker Compose部署Overleaf社区版。通过容器化部署,您可以快速搭建自己的Overleaf服务,适合个人使用或小型团队协作。
核心服务组件
Overleaf社区版部署包含三个主要服务容器:
- ShareLaTeX主服务:提供核心的Web编辑界面和API功能
- MongoDB数据库:存储用户数据、项目信息等结构化数据
- Redis缓存:用于会话管理和临时数据存储
配置文件详解
基础配置
version: '2.2'
services:
sharelatex:
image: sharelatex/sharelatex
ports:
- 80:80
volumes:
- ~/sharelatex_data:/var/lib/overleaf
- 使用Docker Compose 2.2版本格式
- 主服务映射80端口到宿主机
- 数据卷将容器内数据持久化到宿主机的
~/sharelatex_data
目录
数据库配置
mongo:
image: mongo:6.0
command: '--replSet overleaf'
volumes:
- ~/mongo_data:/data/db
- 使用MongoDB 6.0版本
- 配置为副本集模式(虽然单节点)
- 数据持久化到宿主机的
~/mongo_data
目录
缓存配置
redis:
image: redis:6.2
volumes:
- ~/redis_data:/data
- 使用Redis 6.2版本
- 数据持久化到宿主机的
~/redis_data
目录
关键环境变量
基本设置
OVERLEAF_APP_NAME: Overleaf Community Edition
OVERLEAF_MONGO_URL: mongodb://mongo/sharelatex
OVERLEAF_REDIS_HOST: redis
- 定义应用名称
- 配置MongoDB连接URL
- 配置Redis主机地址
功能开关
ENABLED_LINKED_FILE_TYPES: 'project_file,project_output_file'
ENABLE_CONVERSIONS: 'true'
EMAIL_CONFIRMATION_DISABLED: 'true'
- 启用文件链接功能
- 启用文档转换(如PDF预览)
- 禁用邮件确认(简化注册流程)
高级配置(可选)
# OVERLEAF_SITE_URL: http://overleaf.example.com
# OVERLEAF_NAV_TITLE: Overleaf Community Edition
# OVERLEAF_HEADER_IMAGE_URL: http://example.com/mylogo.png
- 自定义站点URL
- 自定义导航栏标题
- 自定义顶部Logo
安全注意事项
- 社区版限制:社区版不提供用户隔离功能,所有用户共享同一环境
- 沙盒编译:虽然配置中包含沙盒编译选项,但社区版不支持此功能
- 数据备份:定期备份MongoDB和Redis数据目录
- 生产环境:不建议直接将社区版用于生产环境
部署建议
- 硬件要求:至少2GB内存,建议4GB以上
- 网络配置:考虑使用Nginx反向代理添加HTTPS支持
- 监控:设置容器健康检查监控
- 更新策略:定期更新镜像版本获取安全补丁
常见问题解决
- 启动失败:检查MongoDB副本集初始化是否完成
- 性能问题:增加Redis缓存大小或优化MongoDB配置
- 存储问题:确保数据卷有足够权限和空间
通过以上配置,您可以快速部署一个功能完整的Overleaf社区版服务,满足个人或小团队的LaTeX协作编辑需求。