安装环境
  
    
  
- Ubuntu 24.04
 
- docker 27.3.1
 
- docker-compose v2.30.3
 
- sharelatex 5.2.1
 
安装
  
    
  
官网给出 docker-compose 文件 无法安装,mongo 总是报错,同时也尝试通过 toolkit 安装,也同样无法安装。
参考 issues1263 得知是数据库初始化的问题,修改 docker-compose.yml 文件中的 mongo 配置:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
  | 
mongo:
    restart: always
    image: mongo:6.0
    command: ["--replSet", "overleaf", "--bind_ip_all", "--port", "27017"]
    container_name: mongo
    volumes:
        - ./mongo_data:/data/db
    ports:
        - 27017:27017
    environment:
        MONGO_INITDB_DATABASE: sharelatex
    healthcheck:
        test: echo "try { rs.status() } catch (err) { rs.initiate({_id:'overleaf',members:[{_id:0,host:'<IP>:27017'}]}) }" | mongosh --port 27017 --quiet
        retries: 10
        interval: 5s
        timeout: 10s
  | 
 
此时即可通过 docker compose up -d 正常运行。
配置
  
    
  
使用下面命令注册管理员账号:
1
2
  | 
docker exec sharelatex /bin/bash -ce \
  "cd /overleaf/services/web && node modules/server-ce-scripts/scripts/create-user --admin --email=<EMAIL>"
  | 
 
参考 文档 安装全部的 texlive 的中英文字体。先将字体放入挂载的卷 sharelatex_data/fonts 中,进入容器执行:
1
2
3
4
5
6
  | 
apt update
apt install -y latex-cjk-all texlive-lang-chinese texlive-lang-english
cp /var/lib/overleaf/fonts/* /usr/share/fonts/zh-cn/
cd /usr/share/fonts
fc-cache -fv
fc-list :lang=zh-cn
  | 
 
也可以直接使用打包好的镜像(基于 sharelatex/sharelatex:5.2.1)。
1
  | 
docker pull hackroot/sharelatex-full-cn:5.2.1
  |