Docker容器部署overleaf

2024-04-28 00:44
文章标签 部署 docker 容器 overleaf

本文主要是介绍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}

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

参考:

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

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

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

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

这篇关于Docker容器部署overleaf的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/941926

相关文章

Web技术与Nginx网站环境部署教程

《Web技术与Nginx网站环境部署教程》:本文主要介绍Web技术与Nginx网站环境部署教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Web基础1.域名系统DNS2.Hosts文件3.DNS4.域名注册二.网页与html1.网页概述2.HTML概述3.

Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例

《Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例》本文介绍Nginx+Keepalived实现Web集群高可用负载均衡的部署与测试,涵盖架构设计、环境配置、健康检查、... 目录前言一、架构设计二、环境准备三、案例部署配置 前端 Keepalived配置 前端 Nginx

ubuntu如何部署Dify以及安装Docker? Dify安装部署指南

《ubuntu如何部署Dify以及安装Docker?Dify安装部署指南》Dify是一个开源的大模型应用开发平台,允许用户快速构建和部署基于大语言模型的应用,ubuntu如何部署Dify呢?详细请... Dify是个不错的开源LLM应用开发平台,提供从 Agent 构建到 AI workflow 编排、RA

ubuntu16.04如何部署dify? 在Linux上安装部署Dify的技巧

《ubuntu16.04如何部署dify?在Linux上安装部署Dify的技巧》随着云计算和容器技术的快速发展,Docker已经成为现代软件开发和部署的重要工具之一,Dify作为一款优秀的云原生应用... Dify 是一个基于 docker 的工作流管理工具,旨在简化机器学习和数据科学领域的多步骤工作流。它

Nginx部署React项目时重定向循环问题的解决方案

《Nginx部署React项目时重定向循环问题的解决方案》Nginx在处理React项目请求时出现重定向循环,通常是由于`try_files`配置错误或`root`路径配置不当导致的,本文给大家详细介... 目录问题原因1. try_files 配置错误2. root 路径错误解决方法1. 检查 try_f

Docker安装MySQL镜像的详细步骤(适合新手小白)

《Docker安装MySQL镜像的详细步骤(适合新手小白)》本文详细介绍了如何在Ubuntu环境下使用Docker安装MySQL5.7版本,包括从官网拉取镜像、配置MySQL容器、设置权限及内网部署,... 目录前言安装1.访问docker镜像仓库官网2.找到对应的版本,复制右侧的命令即可3.查看镜像4.启

debian12安装docker的实现步骤

《debian12安装docker的实现步骤》本文主要介绍了debian12安装docker的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录步骤 1:更新你的系统步骤 2:安装依赖项步骤 3:添加 docker 的官方 GPG 密钥步骤

SpringIOC容器Bean初始化和销毁回调方式

《SpringIOC容器Bean初始化和销毁回调方式》:本文主要介绍SpringIOC容器Bean初始化和销毁回调方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录前言1.@Bean指定初始化和销毁方法2.实现接口3.使用jsR250总结前言Spring Bea

Windows Docker端口占用错误及解决方案总结

《WindowsDocker端口占用错误及解决方案总结》在Windows环境下使用Docker容器时,端口占用错误是开发和运维中常见且棘手的问题,本文将深入剖析该问题的成因,介绍如何通过查看端口分配... 目录引言Windows docker 端口占用错误及解决方案汇总端口冲突形成原因解析诊断当前端口情况解

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小