前言
Latex是科研工作中最常用的文档排版系统,其中最常用的就是在线latex编辑器overleaf。然而overleaf对于国内用户而言延迟非常高(虽然有cn服务器,但是仍然很慢)。对于科研团队来说,在自己的服务器上部署Overleaf,从而方便快速的编译使用latex,将为整个团队都省去安装Latex各种包的繁琐,是一件非常重要的事儿。本文在centos-7上部署overleaf。
安装
确保有centos系统的root权限
1. 安装Docker
安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
1
yum install -y yum-utils device-mapper-persistent-data lvm2
设置源
1
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
可以查看所有仓库中所有docker版本,并选择特定版本安装
1
yum list docker-ce --showduplicates | sort -r
安装docker
1
yum install docker-ce
设置开机启动
1
2systemctl start docker
systemctl enable docker验证安装是否成功(有client和service两部分表示docker安装启动都成功了)
1
2docker version
如果出现类似下面信息,表上安装成功
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28Client: Docker Engine - Community
Version: 20.10.7
API version: 1.41
Go version: go1.13.15
Git commit: f0df350
Built: Wed Jun 2 11:58:10 2021
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.7
API version: 1.41 (minimum version 1.12)
Go version: go1.13.15
Git commit: b0f5bc3
Built: Wed Jun 2 11:56:35 2021
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.4.9
GitCommit: e25210fe30a0a703442421b0f60afac609f950a3
runc:
Version: 1.0.1
GitCommit: v1.0.1-0-g4144b63
docker-init:
Version: 0.19.0
GitCommit: de40ad0docker-compose 安装
最简单的方式就是用pip安装,但是由于linux系统中仍然使用python2的pip,导致如下安装失败
1
2pip install docker-compose
可以尝试另外一种方法:从GitHub下载,然后加入权限直接使用
1
2curl -L https://github.com/docker/compose/releases/download/1.29.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose检查安装版本,正确输出则表示安装完成
1
docker-compose --version
2. 安装Overleaf
通过docker安装Overleaf的开源版本sharelatex
1 | docker pull sharelatex/sharelatex |
3. 配置Overleaf
1 | wget https://raw.githubusercontent.com/sharelatex/sharelatex/master/docker-compose.yml |
对下载的docker-compose.yml文件进行编辑,修改端口号。需要修改的就是ports: - 80:80,一般80端口都被apache或nginx占用了,改用其他端口如:ports: - 5000:80。
1 | vim docker-compose.yml |
4. 启动Overleaf
在docker-compose.yml所在路径下执行
1 | docker-compose up -d |
5. 安装texlive
先进入docker容器,在docker中安装编译所需的完整的texlive
1 | docker exec -it sharelatex bash |
创建用户
将下面的邮件换成自己的邮箱
1 | docker exec sharelatex /bin/bash -c "cd /var/www/sharelatex; grunt user:create-admin --email=joe@example.com" |
然后打开浏览器访问http://localhost:8080/user/password/set?passwordResetToken=<token>
,修改密码即可使用