【教程】Docker方式本地部署Overleaf

转载请注明出处:小锋学长生活大爆炸[xfxuezhagn.cn]

如果本文帮助到了你,欢迎[点赞、收藏、关注]哦~

目录

背景说明

下载仓库

初始化配置

修改监听IP和端口

自定义网站名称

修改数据存放位置

更换Docker源

更换Docker存储位置

启动Overleaf

创建管理员帐户

创建第一个项目


背景说明

Overleaf又挂了,数据放在别人手里真是不靠谱。反正Overleaf是开源的,所以自己搭建一个。


Overleaf Status

教程来自官方:toolkit/doc/quick-start-guide.md at master · overleaf/toolkit · GitHub

下载仓库

首先,让我们将这个git存储库克隆到你的机器上:

bash 复制代码
git clone https://github.com/overleaf/toolkit.git ./overleaf-toolkit

接下来让我们进入这个目录:

bash 复制代码
cd ./overleaf-toolkit

让我们看一下存储库的结构:

bash 复制代码
ls -l

它将打印如下内容:

复制代码
    bin
    CHANGELOG.md
    config
    data
    doc
    lib
    LICENSE
    README.md
  • README.md文件包含一些关于项目的有用信息
  • doc目录包含使用该工具包所需的所有留档
  • config目录将包含本地配置文件(我们稍后将创建)
  • bin目录包含管理背面实例的脚本集合

初始化配置

让我们通过运行bin/init来创建本地配置:

bash 复制代码
bin/init

现在检查config/目录的内容

bash 复制代码
ls config
# overleaf.rc     variables.env     version
复制代码
这是将与之交互的三个配置文件:
  • overleaf.rc:主要的顶级配置文件
  • variables.env:加载到docker容器中的环境变量
  • version:要使用的docker映像的版本
  • 默认情况下,工具包使用免费的社区版
  • 默认情况下,overleaf使用texlive,并且宏包是不全的

修改监听IP和端口

./config/overleaf.rc中,需要修改以下字段:

bash 复制代码
OVERLEAF_LISTEN_IP=0.0.0.0 # 监听所有的IP
OVERLEAF_PORT=8000         # 默认是80端口

自定义网站名称

./config/variables.env文件中,修改:

bash 复制代码
OVERLEAF_APP_NAME="Overleaf Instance"
OVERLEAF_SITE_URL=xxx
OVERLEAF_NAV_TITLE="Overleaf Instance"
OVERLEAF_ADMIN_EMAIL=mail@xxx.site

修改完配置文件之后,需要重新build才可以应用配置。

bash 复制代码
sudo bin/down 
sudo bin/up

修改Mongo版本

MongoDB 官方从 5.0 开始引入的硬件限制,强制要求支持 AVX,无法通过任何软件方法绕过。所以需要降低版本。

./config/overleaf.rc中,需要修改以下字段:

bash 复制代码
MONGO_VERSION=4.4

修改数据存放位置

./config/overleaf.rc中,需要修改以下字段:

更换Docker源

可以看这篇:【教程】最新可用!Docker国内镜像源列表_docker镜像源-CSDN博客

推荐:https://docker.1panel.live

更换Docker存储位置

可以看这篇:【教程】Docker更换存储位置-CSDN博客

启动Overleaf

该工具包使用docker compose来管理docker容器。该工具包提供了一组脚本来包装docker compose,并处理大部分细节。

可以先检查一下是否存在隐性问题:

bash 复制代码
sudo bin/doctor

然后让我们启动docker服务:

bash 复制代码
sudo bin/up

# 后台运行:
# sudo bin/up -d 

应该看到docker容器的一些日志输出,表明容器正在运行。如果在终端按CTRL-C,服务将关闭。可以通过运行bin/start再次启动它们(而不附加到日志输出)。更一般地说,如果发现脚本没有涵盖你的用例,可以运行bin/docker-compose来直接控制docker compose系统。

创建管理员帐户

  1. 在浏览器中,打开http://localhost/launchpad。应该会看到一个包含电子邮件和密码字段的表单。用想用作管理员帐户的凭据填写这些凭据,然后单击"注册"。
  2. 然后单击链接进入登录页面(http://localhost/login)。输入凭据。登录后,将被带到欢迎页面。
  3. 单击页面底部的绿色按钮开始使用。

创建第一个项目

  1. http://localhost/project页面上,将看到一个按钮,提示创建第一个项目。单击按钮并按照说明进行操作。
  2. 然后,你应该被带到新项目,在那里将看到一个文本编辑器和一个PDF预览。
相关推荐
小敬爱吃饭7 分钟前
Ragflow Docker部署及问题解决方案(界面为Welcome to nginx,ragflow上传文件失败,Docker中的ragflow-cpu-1一直重启)
人工智能·python·nginx·docker·语言模型·容器·数据挖掘
杨云龙UP10 分钟前
从0到1快速学会Linux操作系统(基础),这一篇就够了!
linux·运维·服务器·学习·ubuntu·centos·ssh
HXQ_晴天12 分钟前
Ubuntu 设置中文输入法
linux·运维·ubuntu
Dovis(誓平步青云)13 分钟前
《Linux 信号入门:搞懂 “进程通信的紧急电话” 到底怎么用(初篇)》
linux·运维·服务器
0vvv024 分钟前
删除wsl环境下的Ubuntu系统
linux·运维·ubuntu
木子欢儿35 分钟前
Docker Hub 镜像发布指南
java·spring cloud·docker·容器·eureka
C++ 老炮儿的技术栈42 分钟前
GCC编译时无法向/tmp 目录写入临时汇编文件,因为设备空间不足,解决
linux·运维·开发语言·汇编·c++·git·qt
Agent产品评测局1 小时前
企业数据处理自动化落地,抓取分析全流程实现方案 —— 2026企业级智能体选型与技术路径深度解析
运维·人工智能·ai·自动化
我科绝伦(Huanhuan Zhou)1 小时前
分享一个网络智能运维系统
运维·网络
鬼先生_sir1 小时前
Spring Cloud 微服务监控实战:SkyWalking + Prometheus+Grafana 全栈解决方案
运维·spring cloud·grafana·prometheus·skywalking