Overleaf本地搭建:Podman版
CentOS 8已默認(rèn)使用Podman,故再寫一個(gè)通過Podman啟動Overleaf社區(qū)版(Sharelatex)的指南。
1 預(yù)備條件
本文在CentOS 8上測試通過,操作系統(tǒng)和相關(guān)工具版本如下:
安裝Python和Podman Compose:
注意Podman?Compose要選擇devel版,穩(wěn)定版會有bug。

2 構(gòu)建服務(wù)
以下步驟參考了Overleaf?official quick?start?guide:
新建目錄,用于存放Podman?Compose文件,目錄名不能是“sharelatex”。
如果用了“sharelatex”,Podman Compose會先創(chuàng)建一個(gè)名為“sharelatex”的pod,然后根據(jù)下面的docker-compose.yml文件,創(chuàng)建一個(gè)名為“sharelatex”的container,與pod的名字會沖突。本人沒研究過Podman,對pod不作探討,索性選擇改目錄名。這點(diǎn)與Docker有差別。
新建以下目錄:
Docker?Compose會自動創(chuàng)建這些目錄,但Podman Compose不會,需要手動創(chuàng)建。這些目錄與docker-compose.yml中的配置是對應(yīng)的。
復(fù)制以下代碼到docker-compose.yml文件:
這個(gè)文件是直接從官方guide上復(fù)制的,但是針對Podman?Compose,在Redis和Mongo那里添加了一行:
下面就可以啟動服務(wù)了:

3 升級TexLive
Sharelatex采用TeXLive,相應(yīng)的包和配置管理工具為tlmgr。參考tlmgr的官方文檔:
將TeXLive升級到最新版,并安裝所有package:
保存image,用于以后直接部署(可選):

4 中文支持
Sharelatex的Docker鏡像基于Ubuntu,參考Ubuntu wiki:
只要將中文字體文件復(fù)制到container的/usr/share/fonts或/usr/local/share/fonts目錄下即可:
可以先復(fù)制中文字體,再commit到鏡像。實(shí)際使用時(shí)推薦xeCJK+XeLaTeX編譯中文。