華為云學生機裝ShareLatex
在帖子 [交流吐槽] #化鯤為鵬,我有話說# 華為云安裝Docker跑ShareLatex【失敗放棄,復盤問題】下的第二回答,也可以直接打開我的博客 華為云學生機裝ShareLatex查看

上接[華為云鯤鵬安裝Docker跑ShareLatex【失敗放棄】](https://blog.bugatii100peagle.cn/2019/11/08/%E5%8D%8E%E4%B8%BA%E4%BA%91%E5%AE%89%E8%A3%85ShareLatex/)
**環境準備**
新機子到手首先
```bash
sudo apt update
sudo apt upgrade
```
## 安裝Docker
參考[ubuntu 18.04 安裝docker ce](https://www.jianshu.com/p/83483c35bfcd)卸載舊版本Docker,新機子不用,給重裝的老機子用。
```bash
sudo apt-get remove docker docker-engine docker.io
```
安裝包以允許通過HTTPS使用存儲庫
```bash
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
software-properties-common
```
添加Docker的官方GPG密鑰
```bash
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
```
確認指紋
```bash
sudo apt-key fingerprint 0EBFCD88
```
設置穩定存儲庫,默認最新版
```bash
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
```
再次更新apt包索引
```bash
sudo apt-get update
```
安裝最新版本的Docker CE
```bash
sudo apt-get install docker-ce
```
查看Docker CE 版本
```bash
docker -v
```
通過運行hello-world映像驗證是否正確安裝了Docker CE
```bash
sudo docker run hello-world
```
學生機上述過程絲滑流暢,毫無問題。突然有點想念剛剛退掉的鯤鵬,他可是折磨了我兩天,為他茶不思飯不想!
## Docker-compose
[docker/compose官網倉庫](https://github.com/docker/compose/releases)有發布最新的版本,同時也給出了命令行安裝方法。
```bash
curl -L https://github.com/docker/compose/releases/download/1.25.0-rc4/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
```
如果你要是嫌服務器自己`curl`速度慢的話可以再終端中`uname -s`-`uname -m`看自己服務器的參數選擇對應版本下載即可,瀏覽器中下載還挺快的,推薦下載神器IDM,然后用ftp把下載的docker-compose文件傳到服務器,再對應地修改目錄加權限。

上傳好后驗證文件完整性
```bash
sha512sum docker-compose-Linux-x86_64
```
我下載的是[docker-compose-Linux-x86_64.1.23.0](https://github.com/docker/compose/releases/download/1.23.0/docker-compose-Linux-x86_64),官網給出的值是`5b6f948a264a2c018a124b3cae0ce788f14b94a37ab05ca3ba3bb8622f5b7d0b`,然而我換了幾個版本的我驗證出來的sha56值都不是這個,大約是我搞錯了驗證方式?不過能用的就可以。

移動到`/usr/local/bin/`文件夾并加權限。
```bash
mv docker-compose-Linux-x86_64? /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
```
測試Docker-compose 可用
```bash
docker-compose -v
```

## 安裝Sharelatex
拉取鏡像
```bash
sudo docker pull sharelatex/sharelatex
```
參考[ShareLaTeX安裝、配置與部署](https://zhuanlan.zhihu.com/p/54088512)新建文件夾
```bash
cd ~
mkdir sharelatex
cd sharelatex
mkdir sharelatex_data
mkdir mongo_data
mkdir redis_data
```
下載[overleaf官方的docker-compose.yml](https://raw.githubusercontent.com/sharelatex/sharelatex/master/docker-compose.yml)到`sharelatex`文件夾下。


使用docker-compose 啟動部署
>第一次運行`docker-compose`會自動拖取鏡像mongo和redis,我上一篇在鯤鵬上想嘗試的手動安裝mongodb代替docker-compose的功能就是這張圖的啟發。

```bash
sudo docker-compose up -d
```
`-d`參數可以讓docker在后臺執行,不加`-d`的話就會在終端輸出一大串狀態,而且你還得一直保持著終端掛著。

到這里就換到[使用Docker部署ShareLaTex并簡單配置中文環境](https://huanghailiang.github.io/2019/07/25/Docker-deployment-ShareLaTex/)的教程來,進入容器的命令行(sharelatex容器本質上是一個Ubuntu)
```bash
docker exec -it sharelatex bash
```
下載并運行升級腳本
```bash
wget http://mirror.ctan.org/systems/texlive/tlnet/update-tlmgr-latest.sh
sh update-tlmgr-latest.sh -- --upgrade
```

更換texlive的下載源,例如國內的清華源
```bash
tlmgr option repository https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet/
```
升級tlmgr
```bash
tlmgr update --self --all
```
安裝完整版texlive(漫長的等待,不要讓shell斷開)
```bash
tlmgr install scheme-full
```

等上一步跑完,退出sharelatex的命令行界面,并重啟sharelatex容器
```bash
exit
docker restart sharelatex
```
然后在瀏覽器打開你的IP地址,如果改了端口的加上對應端口,第一次使用會提示注冊管理員賬號。

中文編程使用xelatex,雖然有報錯,但是不影響

參考[overleaf-Chinese](https://cn.overleaf.com/learn/latex/Chinese#The_ctex_Bundle_Classes)和][LaTeX技巧856:在overleaf平臺上使用CTeX](https://www.latexstudio.net/archives/7097.html)可以直接使用Ubuntu自帶的字體無需自己手動安裝字體。
```latex
\documentclass{article}
\usepackage{CJKutf8}
\begin{document}
\begin{CJK*}{UTF8}{gbsn}
\section{前言}
\section{關于數學部分}
數學、中英文皆可以混排。You can intersperse math, Chinese and English (Latin script) without adding extra environments.
\end{CJK*}
\bigskip? %% Just some white space
You can also insert Latin text in your document
\bigskip? %% Just some white space
\begin{CJK*}{UTF8}{bsmi}
這是繁體中文。
\end{CJK*}
\begin{CJK}{UTF8}{min}
\section{これは最初のセクションである}
日本語で \LaTeX の組版を実証するための導入部分。
フォントはまた、數學的な形態および他の環境で使用することができる
\end{CJK}
\bigskip
Outside the environment Latin characters may be used.
\begin{CJK}{UTF8}{}
\CJKfamily{mj}
?? ??? ?? ?? ??? ?? ??.
\begin{verbatim}
??? ?? ??? ?? ??? ??? ???
\end{verbatim}
\end{CJK}
Latin characters are also allowed.
\end{document}
```


[Quick Start Guide](https://github.com/overleaf/overleaf/wiki/Quick-Start-Guide)官網還有像設置https,設置語言一類的教程,感興趣可以再看看。
Docker
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。