前言
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。如果没有,可以通过以下命令安装。
sudo apt-get install docker-ce docker-ce-cli containerd.io
pip install docker-compose
查看版本,检查是否安装成功
docker --version
docker-compose --version
2. 安装Overleaf
通过docker安装Overleaf的开源版本sharelatex
docker pull sharelatex/sharelatex
出现错误:Got permission denied while trying to connect to the Docker daemon ...
在用户权限下docker 命令需要 sudo 否则出现以上问题,解决方法:
通过将用户添加到docker用户组可以将sudo去掉,命令如下
sudo groupadd docker #添加docker用户组
sudo gpasswd -a $USER docker #将登陆用户加入到docker用户组中
newgrp docker #更新用户组
docker ps #测试当前用户是否可以正常使用docker命令
3. 配置Overleaf
wget https://raw.githubusercontent.com/sharelatex/sharelatex/master/docker-compose.yml
sudo vim docker-compose.yml
需要修改的就是ports: - 80:80
,一般80端口都被apache或nginx占用了,改用其他端口如:ports: - 9000:80
。 其他可根据需要修改,如挂载位置等。
4. 启动Overleaf
在docker-compose.yml
所在路径下执行
docker-compose up -d
5. 安装完整texlive
先进入docker容器,在docker中安装编译所需的完整的texlive
docker exec -it sharelatex bash
tlmgr update --self --all
tlmgr install scheme-full &
安装过程,十分漫长,总共需要安装近4000个包,应该就是要装一晚上的节奏,为了避免shell断掉加上 &
,回车后可以看到安装过程。 如果过慢可以尝试换源:
tlmgr option repository https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet/
再执行update和install。
6. 使用Overleaf
打开浏览器访问http://hostname:9000/launchpad
,或http://127.0.0.1:9000/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]
网友评论