Docker容器部署overleaf

overleaf在线版限制很多,好在开源,准备在本地Docker部署,网上翻了翻,似乎本地部署并非易事,我也尝试了一下,发现直接使用docker-compose拉官方最新镜像部署的确问题很多,不过最终还是完美解决。

一、拉取Overleaf Toolkit 工具包

将工具包克隆下来:

git clone https://github.com/overleaf/toolkit.git ./overleaf-toolkit

进入目录:

cd overleaf-toolkit

二、初始化配置

bin/init

此时config文件夹下生成了三个配置文件。

三个配置文件的作用:

  • overleaf.rc:顶级配置文件
  • variables.env:加载到 docker 容器中的环境变量
  • version:使用的 docker 镜像版本

1、修改overleaf.rc文件

将:

SHARELATEX_LISTEN_IP=127.0.0.1

 改为:

SHARELATEX_LISTEN_IP=0.0.0.0

其它配置保持默认即可。

variables.env中可以自定义邮件服务

# SHARELATEX_EMAIL_SMTP_HOST=smtp.qq.com
# SHARELATEX_EMAIL_SMTP_PORT=587
# SHARELATEX_EMAIL_SMTP_SECURE=false
# SHARELATEX_EMAIL_SMTP_USER=wrm244@qq.com
# SHARELATEX_EMAIL_SMTP_PASS=hizmpfrpvmdkbbae

2、修改lib目录下的docker-compose.base.yml

vim docker-compose.base.yml

- "${SHARELATEX_LISTEN_IP:-127.0.0.1}:${SHARELATEX_PORT:-80}:80"

改为:

- "10808:80"

这样就可以通过外部端口10808访问服务。

注意:很多博主在这里都把镜像修改为自己改过的,我这里不对镜像做任何调整,就使用官方的镜像。

然后执行以下命令,启动服务:

bin/up

现在会看到来自 docker 容器的一些日志输出,表示正在拉取镜像,后续会自动运行容器。如果在终端上按下Ctrl+c,服务将关闭。您可以通过命令bin/start来重新启动它们(不附加到日志输出)。

正常不会报错,浏览器访问:http://ip:10808就能出现登录界面。

三、TeXLive安装

如果你直接开始使用,那么大概率会出现编译问题。

因为官方的镜像为了节省带宽,镜像中未含完整版本的TeXLive,所以要继续安装 TeXLive。

1、进入到容器sharelatex的命令行界面:

docker exec -it sharelatex bash 

2、进入到sharelatex容器的文件夹:

cd /usr/local/texlive

3、下载更新文件:

wget http://mirror.ctan.org/systems/texlive/tlnet/update-tlmgr-latest.sh --no-check-certificate

4.执行更新操作:

sh update-tlmgr-latest.sh -- --upgrade

5.为了提高更新速度,配置国内更新源:

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

6.执行更新操作:

tlmgr update --self --all # luaotfload-tool -fu

7.执行安装操作:

tlmgr install scheme-full

安装过程较慢,应该要安装4000多个包,耐心等待完成。

8.关闭重启Overleaf:

ctrl+c结束刚才起的容器,然后执行命令重启容器:

bin/start

四、配置管理员

在浏览器中,打开 http://ip:10808/launchpad,设置管理员邮箱和密码,然后进入首页登录账号

新建项目,输入:

\documentclass[UTF8]{ctexart}
\begin{document}
\rmfamily
\Huge 我正在使用Overleaf v2
\end{document}

发现已经可以编译中文了,手工。

补充:

如果想让WEB界面支持中文显示,vim config/variables.env

OVERLEAF_SITE_LANGUAGE=zh-CN

也可以自定义NAV标题和应用名称

OVERLEAF_NAV_TITLE="我的Latex"
OVERLEAF_APP_NAME="我的Latex"

 

参考:

Docker部署Overleaf包含中文字体与全套texlive镜像_docker overleaf-CSDN博客

保姆教程—在本地部署Overleaf - 知乎 (zhihu.com)

OverLeaf v2 的入门及中文编辑 - LaTeX工作室 (latexstudio.net)

overleaf的中文设置 - 简书 (jianshu.com)

  • 16
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值