【教程】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预览。
相关推荐
minji...10 小时前
Linux 网络套接字编程(七)TCP服务端和客户端的实现——网络版本计算器
linux·运维·服务器·网络·c++·tcp/ip·udp
Misnice10 小时前
DevOps 介绍
运维·devops
liann11910 小时前
3.3_tasklist和netstat命令详解
运维·windows·计算机网络·安全·信息与通信
Trival_dream10 小时前
应用与实例的关系
java·docker·kubernetes
子木HAPPY阳VIP10 小时前
Tomcat 9 + JSP 中文乱码终极解决方案(完整版可复制)
java·开发语言·docker·tomcat·jsp
郝学胜-神的一滴10 小时前
epoll 反应堆模型深度拆解:从红黑树到回调闭环,手写高性能回射服务器
linux·运维·服务器·开发语言·c++·unix
sdszoe492210 小时前
Windows server服务器AD+DC网络服务器运维管理方式
运维·服务器·windows·ad+dc·集中式管理·域控制器dc
Agent手记10 小时前
药物研发数据处理或GSP合规管理医药Agent推荐:2026数智医药全链路自动化实战
运维·人工智能·ai·自动化
摇滚侠10 小时前
Docker 部署 MySQL ElasticSearch Kibana RabbitMQ
mysql·elasticsearch·docker
ai产品老杨10 小时前
深度解析:基于 Docker 与异构计算的工业级 AI 视频管理平台架构 —— 从 GB28181 接入到全平台源码交付
人工智能·docker·音视频