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) 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/579064.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

如何借模板助力小程序开发

不论是奶茶店还是其他行业,想要开发小程序,乔拓云都为你提供了便捷的方案。无需复杂的编程技术,通过套用模板的方式,即可快速打造专属小程序。 在线访问乔拓云官方网站,免费注册账号后,即可进入商城小程序的…

C语言学习/复习36

一、程序的环境与预处理 二、翻译环境与执行环境 三、运行环境 四、预编译(预处理)详解

Docker从无到有

主要为windows下docker的安装与使用~ 初始Docker Docker理解 对于docker的加简介,我们可以官网获取它的概念,接下来就从什么是docker、为什么要使用docker以及它的作用来进行一个快速入门 前提:项目在发布时,不仅需要其jar包同…

Open-Sora 升级技术报告解读

最新功能概览 开源地址:https://github.com/hpcaitech/Open-Sora 技术报告:Open-Sora/docs/report_02.md at main hpcaitech/Open-Sora GitHub技术报告: 支持长视频生成;视频生成分辨率最高可达 720p;单模型支持任…

SOL跟单机器人是什么?

SOL跟单机器人是什么? 顾名思义,就是对方买什么我们买什么。。 solana跟单机器人,炒土狗新思路 跟聪明地址买入及卖出 1.跟随目标地址买入代币,比目标地址慢1-2秒内上链 2.上链稳定,采用jito路径,防止被夹 …

【视频打架行为数据集】打斗场景视频数据集简要介绍

一、UBI-Fight(异常事件检测数据集) 介绍 UBI-Fights 数据集是一个独特的全新大型数据集,涉及特定的异常检测并仍然在打斗场景中提供广泛的多样性,该数据集包含 80 小时的视频,在帧级别进行了完全注释。由 1000 个视…

三款数据可视化工具深度解析:Tableau、ECharts与山海鲸可视化

在数字化时代,数据可视化工具成为了企业和个人进行数据分析和决策的重要助手。市面上众多数据可视化工具各具特色,本文将为您介绍三款热门的数据可视化工具,帮助您更好地理解和利用数据。 首先,让我们来认识Tableau。Tableau是一款…

opencv4.8 系列一环境搭搭建

open 运行环境&#xff1a; vs2017 下载地址&#xff1a;https://www.123pan.com/s/cVyRVv-ydPWh.html 一&#xff1a;新建项目 二&#xff1a;核心代码&#xff1a; 在这里插入代码片 #include<opencv2/opencv.hpp>int main(int argc,char** argv) {cv::Mat src cv…

windows服务启动提示‘服务没有响应控制功能’(mysql启动报错)

在安装mysql的时候&#xff0c;在windows服务项启动 或 使用命令net start mysql 时启动是报错&#xff0c;提示 服务没有响应控制功能 发生原因&#xff1a; Windows10 x64 或 更高的操作系统&#xff0c;有些系统缺少一些组件 解决办法&#xff1a; 1、下载最新的 Microsoft …

Mybatis入门-----(1)

Mybaits入门 一、Mybaits框架特点 支持定制化SQL、存储过程、基本路线以及高级映射避免了几乎所有JDBC代码中手动设置参数以及获取结果集支持注解式开发、XML开发 二、开发我第一个MYbatis程序 ①打包方式jar ②引入依赖 mybatis依赖mysql驱动 前面两步的pom.xml文件<?…

如何在自己的网站页面中嵌入一个【悬浮音乐播放器】

如何嵌入【悬浮音乐播放器】 前言正文1.打开网易云网页版2.设置自己想要的高度和宽度看注意事项 3.选择是否为自动播放4.在header.php文件中</head>标签前插入下面代码5.在heard.php 中<body>标签后边增加一个 div层6.复制播放器代码到\<div>标签的里边7.保存…

AD修改元器件的引脚长度

这个地方的两个引脚长度不一样 双击其中的一个引脚。 修改这个位置就好了。

Docker学习(二十五)构建 Arthas 基础镜像

目录 一、简介二、构建基础镜像2.1 下载 Arthas2.2 编写 Dockerfile2.3 构建镜像2.4 创建容器2.5 测试 一、简介 Arthas 是一款由 阿里巴巴 开发的 线上监控诊断工具。通过全局视角实时查看应用负载、内存、GC、线程等信息&#xff0c;能在不修改代码的情况下&#xff0c;对业…

SUPIR图像放大模型介绍与实际测试

✨背景 正如&#xff0c;最顶级的料理只需要最简单的烹饪方法一样&#xff0c;图像放大&#xff0c;是设计领域里边最常面对的一个问题&#xff0c;在AI绘画里边也是很常见的一个课题。虽然现在放大算法、放大模型有很多&#xff0c;但是真的能实现的比较好的&#xff0c;并不…

语义分割——json文件转shp

前言 在用labelme标注遥感图像后会生成json文件&#xff0c;如果我们想要shp文件&#xff0c;下面给出了具体实现流程。 一、依赖配置 import json import geopandas as gpd from shapely.geometry import Polygon from osgeo import gdal import argparse import glob import…

【论文解析】笔触渲染生成 前沿工作梳理

最近的一些工作梳理 2023年 Stroke-based Neural Painting and Stylization with Dynamically Predicted Painting Region 2022年Im2Oil: Stroke-Based Oil Painting Rendering with Linearly Controllable Fineness Via Adaptive Sampling 文章目录 1 Stroke-based Neural P…

【海博】雅思该怎么考?

文章目录 考试类型 考试内容 考试形式 备考资源 考试报名 考试成绩 考试类型 学术类&#xff08;A类&#xff09;适用于&#xff1a;出国留学申请本科&#xff0c;研究生及以上学位&#xff0c;或获得专业资质。学术类考试评估考生的英语水平是否满足进行大学或研究生学习…

【C语言】文件操作(1)

为什么使⽤⽂件&#xff1f; 如果没有⽂件&#xff0c;我们写的程序的数据是存储在电脑的内存中&#xff0c;如果程序退出&#xff0c;内存回收&#xff0c;数据就丢失了&#xff0c;等再次运⾏程序&#xff0c;是看不到上次程序的数据的&#xff0c;如果要将数据进⾏持久化的…

Sylar C++高性能服务器学习记录07 【协程模块-知识储备篇】

早在19年5月就在某站上看到sylar的视频了&#xff0c;一直认为这是一个非常不错的视频&#xff0c;由于本人一直是自学编程&#xff0c;基础不扎实&#xff0c;也没有任何人的督促&#xff0c;没能坚持下去&#xff0c;每每想起倍感惋惜。恰逢互联网寒冬&#xff0c;在家无事&a…

vim 插件01:插件管理神器pathogen

1、pathogen简介 Vim 插件 pathogen 是一款历史比较悠久的 Vim 插件管理器。Pathogen 的主要功能是提供一种模块化的方式来管理和加载 Vim 插件。说人话&#xff1a;vim是一款管理各类插件的插卡&#xff0c;使用它会让插件的安装和使用非常方便。 以下是 Pathogen 的主要特点…