首页
/ Overleaf社区版Docker Compose部署指南

Overleaf社区版Docker Compose部署指南

2025-07-06 00:59:59作者:盛欣凯Ernestine

概述

Overleaf是一个流行的在线LaTeX协作编辑平台,本指南将详细介绍如何使用Docker Compose部署Overleaf社区版。通过容器化部署,您可以快速搭建自己的Overleaf服务,适合个人使用或小型团队协作。

核心服务组件

Overleaf社区版部署包含三个主要服务容器:

  1. ShareLaTeX主服务:提供核心的Web编辑界面和API功能
  2. MongoDB数据库:存储用户数据、项目信息等结构化数据
  3. 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

安全注意事项

  1. 社区版限制:社区版不提供用户隔离功能,所有用户共享同一环境
  2. 沙盒编译:虽然配置中包含沙盒编译选项,但社区版不支持此功能
  3. 数据备份:定期备份MongoDB和Redis数据目录
  4. 生产环境:不建议直接将社区版用于生产环境

部署建议

  1. 硬件要求:至少2GB内存,建议4GB以上
  2. 网络配置:考虑使用Nginx反向代理添加HTTPS支持
  3. 监控:设置容器健康检查监控
  4. 更新策略:定期更新镜像版本获取安全补丁

常见问题解决

  1. 启动失败:检查MongoDB副本集初始化是否完成
  2. 性能问题:增加Redis缓存大小或优化MongoDB配置
  3. 存储问题:确保数据卷有足够权限和空间

通过以上配置,您可以快速部署一个功能完整的Overleaf社区版服务,满足个人或小团队的LaTeX协作编辑需求。