阿里云服务器部署ShareLaTex(Overleaf)

使用docker在服务器上部署ShareLaTex,这里服务器使用阿里云的ECS,操作系统为ubuntu16.04

0.准备工作

将apt的下载源换位国内镜像,在这里不再赘述

1.安装docker

首先卸载旧版本的docker

sudo apt-get remove docker docker-engine docker.io containerd runc

安装依赖

sudo apt-get install -y apt-transport-https ca-certificates curl gnupg-agent software-properties-common

添加 GPG 密钥

curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add –

设置 docker 仓库

sudo add-apt-repository \"deb [arch=amd64] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \$(lsb_release -cs) stable"

安装 docker-ce

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

更换国内镜像源(这里推荐用阿里的镜像)

sudo mkdir -p /etc/docker
vim /etc/docker/daemon.json
{"registry-mirrors": ["https://c6j7pq1p.mirror.aliyuncs.com"]
}
sudo systemctl daemon-reload
sudo systemctl restart docker

2.部署overleaf

拉取ShareLaTeX镜像

docker pull sharelatex/sharelatex

创建挂载目录

mkdir ~/sharelatex   # 在用户目录下创建sharelatex、mongo_data、redis_data文件夹(这里使用的是root用户)
mkdir ~/mongo_data
mkdir ~/redis_data
cd ~/sharelatex # 进入sharelatex文件夹

配置挂载目录

pip install docker-compose   #安装docker-compose
#下载docker-compose.yml配置文件:
curl -O https://raw.githubusercontent.com/sharelatex/sharelatex/master/docker-compose.ymlsudo vim docker-compose.yml    #使用vim修改配置文件:

修改以下内容

# 避免端口重复(若80端口占用,可以使用其他端口,例如使用5000端口:- 5000:80)ports:- 80:80# 修改本地挂载目录volumes:- /root/sharelatex:/var/lib/sharelatex# 修改mongo和redis的本地挂载目录
mongo:volumes:- /root/mongo_data:/data/db
redis:volumes:- /root/redis_data:/data

创建并运行容器

docker-compose up -d
  • 此时创建了三个容器sharelatexmongoredis。输入docker ps查看

安装完整texlive

# 进入容器
docker exec -it sharelatex bash# 进入texlive默认安装目录
cd /usr/local/texlive# 下载并运行升级脚本
wget http://mirror.ctan.org/systems/texlive/tlnet/update-tlmgr-latest.sh
sh update-tlmgr-latest.sh -- --upgrade# 更换texlive的下载源,这里使用清华源
tlmgr option repository https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet/# 升级tlmgr
tlmgr update --self --all# 更新字体缓存
luaotfload-tool -fu# 安装完整版texlive(时间一两个小时左右,不要让shell断开)
tlmgr install scheme-full# 退出sharelatex的命令行界面并重启
exit
docker restart sharelatex

安装中文字体

  • 将Windows机的中文字体复制到host机,Windows机的字体储存在C:\windows\Fonts,目录,这里复制到host机的/root/Fonts目录
# 进入Fonts目录
cd Fonts/# 删除其中的.fon字体文件(否则可能会报错)
rm -r *.fon# 返回上层目录并打包
cd ..
tar -zcvf winfonts.tar.gz Fonts/# 把压缩文件传到sharelatex容器的root目录下
docker cp winfonts.tar.gz sharelatex:/root# 进入容器的命令行界面
docker exec -it sharelatex bash# 通过安装wqy字体同时安装xfont工具
apt-get install xfonts-wqy# 进入root目录,解压winfonts.tar.gz,并移动到系统字体目录下
cd ~
tar -zxvf winfonts.tar.gz
mv Fonts /usr/share/fonts/# 进入字体目录安装字体
cd /usr/share/fonts/Fonts
mkfontscale
mkfontdir
fc-cache -fv# 检查确认中文字体安装成功
fc-list :lang=zh-cn
#此时会出现已经安装的中文字体

重启服务

docker restart sharelatex

创建账号

  • 浏览器访问服务器公网IP http://182.xx.xx.xx/launchpad 建立管理员账号(如果不是设置的80端口则需要加上端口号:http://182.xx.xx.xx:5000/launchpad)
  • 通过管理员账号可以继续注册普通用户账号

尝试过配置邮件发送,但似乎并没有成功,在这里也不再介绍,如果有解决了的朋友欢迎留言指教 ( ⊙ o ⊙ )

阿里云服务器部署ShareLaTex(Overleaf)相关推荐

  1. 搭建前后端分离主流项目完整步骤——在线教育系统(阿里云服务器部署上线)

    前言: 需要源码评论或私我 项目技术栈如下图所示: 本次博客分前后端+部署服务器三个步骤来写 先来看看实现效果: 在线教育系统完整三步骤 前言: 一.后端技术栈 1.ssm+mysql: (1)map ...

  2. win系统的阿里云服务器部署IDEASpringBoot项目保姆级教程

    win系统的阿里云服务器部署SpringBoot项目保姆级教程 前言 配置阿里云服务器 配置环境 环境配置中的坑 还有别的坑的话,私信我我补充......毕竟配置是最基本的,还想咋样... jar包导 ...

  3. 阿里云服务器部署StreamX

    阿里云服务器部署StreamX 部署步骤在StreamX官网都有,还有开发环境的介绍.在此记录下具体的操作步骤. 阿里云服务器配置 StreamX是运行在linux上,访问需要通过外网访问到阿里云服务 ...

  4. 阿里云服务器部署个人网盘服务

    阿里云服务器部署个人网盘服务 相关资源: kiftd : https://github.com/KOHGYLW/kiftd 1.安装JAVA运行环境 yum install java-11-openj ...

  5. 阿里云服务器部署网站(保姆级教程) 阿里云搭建宝塔面板 云服务器ECS搭建网站

    阿里云服务器部署网站 这两天白嫖了一个免费的云服务器就想着自己建个网站,以前用过轻量级服务器,那个搭建起来比较容易,现在用的是云服务器ECS ,第一次接触,因为以前没做过,想在网上找找教程,结果教程五 ...

  6. 现代软件工程_团队项目_阿尔法阶段_阿里云服务器部署_2017.11.24

    阿里云服务器部署 目录 购买阿里云学生服务器 服务器链接 XMAPP建站集成软件 网站移植 端口开通 阿里云服务器 阿里云服务器(Elastic Compute Service, ECS)是一种处理能 ...

  7. 项目部署之PHPEMS在线模拟考试系统(亲测有效,含php源码)在阿里云服务器部署

    PHPEMS在线模拟考试系统阿里云服务器部署 相信好多人都在找这个源码哈,小编也是一样,也有一个很大的梦想,就是能把我们这些英雄豪杰集中在一起,比如说这个在线考试系统就可以实现,可以在上面把所有的运维 ...

  8. 阿里云服务器部署MySQL所报的错误集锦(操作系统:CentOS 8)

    阿里云服务器部署MySQL所报的错误集锦(操作系统:CentOS 8) 1.Error: Transaction test error: 当遇到这种错误,执行以下代码: [root@root /]# ...

  9. 阿里云服务器部署项目

    在阿里云服务器上部署自己的项目 小伙伴们是不是想部署自己的项目到服务器上,让自己的朋友,还有广大的网友看到自己的网站呢?下面我就把部署项目到服务器的方法写下来给大家,希望可以帮到有需要的人!!! 前期 ...

  10. 阿里云服务器部署app服务器端-流程步骤

    简介: app服务端和web的服务端的配置是一样的.所以要搭建APP根据web服务端配置即可. 前言:app服务端和web的服务端的配置是一样的.所以要搭建APP根据web服务端配置即可. 1.购买服 ...

最新文章

  1. VMware 克隆网卡无法启动
  2. html dom createevent,js 中 document.createEvent的用法
  3. html元素以开始标签起始,HTML文本
  4. 移植wpa_supplicant 2.5 实现rtl8188可以无线上网
  5. HttpClient 模拟登录网易微博
  6. node版本管理和npm源管理工具
  7. loadrunner录制时web时,安全证书问题
  8. Debian Qualcomm Atheros QCA61x4 Wireless Network Adapter - 网卡驱动
  9. 【温州死中】温州RAP
  10. unittestreport 详细功能使用文档(V1.1.1)——测试派柠檬班
  11. OpenCV计算机视觉(三) —— 图像的几何变换
  12. 0514课的预习任务
  13. Keil编译出错:“no source“: Warning: #2774-D: ‘=‘ assumed following macro name “USE_STDPERIPH_DRIVER“ in
  14. 接收第三方回调,请求方式小技巧
  15. Spring 使用 Mypy 检查 30 万行代码,总结出三大痛点与六个技巧
  16. 基于matlab的msk仿真,基于MATLAB的MSK系统原理仿真分析
  17. MCDF SV lab3 介绍与总结
  18. 研究生如何做好科研和发表文章(三)
  19. ORB-SLAM3从理论到代码实现(六):地图回环优化
  20. MUI返回页面未能及时刷新数据问题的解决办法

热门文章

  1. 智能车四轮组打工日记(二)——单电机驱动硬件设计
  2. 中国银联:金融概述、收单和清算、代收代付
  3. C语言输出数组中最大最小值及位序
  4. px4源码----位置估算(position_estimator_inav_params.h)
  5. 比特率与波特率有何差别?—Vecloud
  6. php eof记录指针,关于ASP eof与bof 区别分析
  7. 初学C语言 输出图形
  8. atmega 128 单片机 智能风扇控制器 PWM 串口 DS18B20 PROTEUS 仿真
  9. 计算机主机有gpib接口吗,PC104模块与通用并行接口(GPIB)通讯的实现
  10. [OpenCV+VS2015]火焰检测算法(HSI判据)