本地自建OverLeaf——和编译超时说拜拜
本地自建OverLeaf——和编译超时说拜拜

Overleaf免费版编译时间只有20秒,开个最便宜的学生会员也要9刀,贫穷限制了我的双眼,不过仍存在解决方案。
Overleaf的开源社区版是Overleaf的开源版本,可以在自己的服务器上搭建一个类似Overleaf的在线LaTeX编辑器。Overleaf开源社区版提供了与Overleaf官方服务相似的功能,如在线编译LaTeX文档、多人协作编辑、模板和宏包支持等。
首先需要一台运行Linux操作系统的电脑(官方推荐Ubuntu),我使用的是2核4G的腾讯云轻量服务器,实测一个人流畅编译。
Windows安装
需要安装WSL,详见:https://ziuch.com/article/self-hosted-overleaf
Linux安装
Overleaf 工具包依赖于以下程序:
bash
docker
建议你在系统中安装最新版本的 docker。
# 参考https://www.runoob.com/docker/ubuntu-docker-install.html然后拉取overleaf的安装文件:
首先,把这个 git 仓库克隆到你的机器上:
$ git clone https://github.com/overleaf/toolkit.git ./overleaf-toolkit接下来,让我们进入这个目录:
$ cd ./overleaf-toolkit在本指南的其余部分,将假定从该目录运行所有后续命令。
在本目录下运行如下指令
cd ./overleaf
bin/init这条命令会在./config目录生成三个文件:
overleaf.rc variables.env version配置 overleaf.rc
OVERLEAF_LISTEN_IP:设置容器将绑定的主机 IP 地址。例如,如果设置为 0.0.0.0 ,那么网络接口将在任何主机 IP 地址上可用。
OVERLEAF_PORT:设置容器将绑定的主机端口。例如,如果此端口设置为 8099 ,而 OVERLEAF_LISTEN_IP 设置为 127.0.0.1 ,那么网络接口将在 http://localhost:8099 上可用。
如果希望在外网访问,建议设置为如下格式:
OVERLEAF_LISTEN_IP=0.0.0.0
OVERLEAF_PORT=8099重要步骤!!!:如果需要使用非英语编译,需要拉取完整的sharelatex镜像,此时需要修改上一步生成的overleaf.rc
确保在 config/overleaf.rc 中设置 OVERLEAF_IMAGE_NAME=tuetenk0pp/sharelatex-full 变量。
即
cd config
vim overleaf.rcnote:如果你已经执行了原始安装命令,可以修改./lib中的docker-compose.base.yml中的image:为image: "tuetenk0pp/sharelatex-full:latest",之后自行删除之前的sharelatex容器并重新执行安装脚本
之后执行安装脚本
sudo bin/up这一步会拉取overleaf的docker镜像,如果遇到网络问题,需要更换国内的云镜像。
{
"registry-mirrors": [
"https://docker.1ms.run",
"https://docker.xuanyuan.me"
]
}然后重新运行
sudo bin/up中间有时候会发现运行失败,重新运行即可。安装成功后会自动开始运行,而且会在开机后自动运行。安装结束后在浏览器上输入:
http://你的服务器ip:8099/launchpad网站会提示我们设置用户名和密码,之后我们发现Overleaf已经可以使用了。
之后可以用NGINX将容器反向代理至你想要的网址。

完成