Overleaf-在线Latex编辑器部署

前言

Latex是科研工作中最常用的文档排版系统,然而我个人觉得很多Latex编辑器没有做到开箱即用,最开始使用Latex的时候我经常一编译就是一堆bug,这让我一个计算机专业热爱折腾的人都有些望而却步,即使别人告诉我Latex的文献管理是多么方便。造成很长一段时间,我都处于:Latex真好,但我选Markdown。

后来,我遇到了Overleaf。

Overleaf是开源的在线Latex编辑器软件,个人用户可以在Overleaf官网注册并免费使用Overleaf,Overleaf官网还具有Review等团队协作功能。但是Overleaf官网在国内的访问速度不佳,科学上网后速度才满足日常需求。

因此,对于科研团队来说,在自己的服务器上部署Overleaf,从此为整个团队都省去了安装Latex各种包的繁琐,多么幸福的事。需要说明的事,目前开源的个人版本的Overleaf功能没有Overleaf官网齐全,也许还有些小bug,但是就我目前的使用来说,足够日常使用了。

安装

1. 安装Docker

确保服务器已经安装了Docker和docker-compose。如果没有,可以通过以下命令安装。

1
2
sudo apt-get install docker-ce docker-ce-cli containerd.io
pip install docker-compose

查看版本,检查是否安装成功

1
2
docker --version
docker-compose --version

2. 安装Overleaf

通过docker安装Overleaf的开源版本sharelatex

1
docker pull sharelatex/sharelatex

3. 配置Overleaf

1
2
wget https://raw.githubusercontent.com/sharelatex/sharelatex/master/docker-compose.yml
sudo vim docker-compose.yml

需要修改的就是ports: - 80:80,一般80端口都被apache或nginx占用了,改用其他端口如:ports: - 5000:80
其他可根据需要修改,如挂载位置等。

4. 启动Overleaf

docker-compose.yml所在路径下执行

1
docker-compose up -d

5. 安装完整texlive

先进入docker容器,在docker中安装编译所需的完整的texlive

1
2
3
docker exec -it sharelatex bash
tlmgr update --self --all
tlmgr install scheme-full &

安装过程,十分漫长,总共需要安装近4000个包,应该就是要装一晚上的节奏,为了避免shell断掉加上 &,回车后可以看到安装过程。
如果过慢可以尝试换源:

1
tlmgr option repository https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet/

再执行update和install。

6. 使用Overleaf

打开浏览器访问http://hostname:5000/launchpad,创建Admin账户,愉快的玩耍吧。

参考

[1] https://github.com/overleaf/overleaf/wiki/Quick-Start-Guide
[2] https://yxnchen.github.io/technique/Docker%E9%83%A8%E7%BD%B2ShareLaTeX%E5%B9%B6%E7%AE%80%E5%8D%95%E9%85%8D%E7%BD%AE%E4%B8%AD%E6%96%87%E7%8E%AF%E5%A2%83/#%E5%87%86%E5%A4%87%E5%B7%A5%E4%BD%9C