Docker Desktopのインストールが簡単にできるようになったという記事を拝見したため、Overleaf Community Editionを設定してみたメモを作りました。
Docker Desktopをインストールします
以下から最新版をダウンロードしてインストーラーを実行しました。
インストール後にWindowsからのサインアウトが必要でした。
つまづいたときは以下の記事を参考にすると良いと思います。
docker-compose.ymlをダウンロード
Windows PowerShellで設定をしていく
Windows PowerShellを起動して、docker-compose.ymlを配置したディレクトリに移動し、`docker-compose up -d`を実行します。
cd [docker-compose.ymlを配置したディレクトリ] docker-compose up -d
必要なものが自動で`docker pull`され、コンテナを起動してくれます。
ファイヤーウォールの許可が必要と出たので許可しました。
コンテナの設定
以下の記事の通りにやります、大変参考になりました。
ほとんど同じなのですが、若干使ったコマンドが違うため、以下に自分がやったものをメモします。
`docker ps`で起動中のコンテナの確認をします。
docker ps
起動中のコンテナが表示されます。
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES ec9906335c40 sharelatex/sharelatex "/sbin/my_init" About a minute ago Up About a minute 0.0.0.0:80->80/tcp sharelatex b9902eb5b9cf mongo:4.0 "docker-entrypoint.s…" About a minute ago Up About a minute (healthy) 27017/tcp mongo 1e6d413b422b redis:5 "docker-entrypoint.s…" About a minute ago Up About a minute 6379/tcp redis
sharelatexのコンテナID(上ではec9906335c40)を確認し、コンテナ内の`bash`を起動します。
docker exec -it ec9906335c40 bash
起動すると以下のようになるはずです。
root@ec9906335c40:/#
TeX環境が最小構成で組まれているそうなので、全部入れます(かなり時間がかかります、自分の環境では2時間かかりました)。
タイミングが良ければ以下で出来ます。
tlmgr update --self tlmgr install scheme-full
が、TeX Liveのバージョン関係でエラーが出る場合があります。
tlmgr: Local TeX Live (2020) is older than remote repository (2021). Cross release updates are only supported with update-tlmgr-latest(.sh/.exe) --update See https://tug.org/texlive/upgrade.html for details.
となる場合は、`update-tlmgr-latest.sh`を持ってくる必要がありました。以下にある最新のやつを取ってきた方が良いでしょう。
wget http://mirror.ctan.org/systems/texlive/tlnet/update-tlmgr-latest.sh chmod u+x update-tlmgr-latest.sh ./update-tlmgr-latest.sh -- --upgrade tlmgr install scheme-full
TeXがインストールできたら、コンテナから出ます。
exit
そしてTeXが全部入ったコンテナを保存します。
docker commit -m "installing all latex packages" ec9906335c40 sharelatex/sharelatex:v1
コンテナの適用
これも以下の記事の通りにやります、大変参考になりました。
Docker Desktopからコンテナを一度停止します。
そして、最初に配置した`docker-compose.yml`の中身を編集します。
version: '2.2' services: sharelatex: restart: always # Server Pro users: # image: quay.io/sharelatex/sharelatex-pro image: sharelatex/sharelatex:v1 # ここを保存したコンテナに変更
日本語化したらちょっと見た目に違和感があったので、私はやりませんでした。
adminの作成
これも以下の記事の通りにやります、大変参考になりました。
Docker Desktopからコンテナを再起動して(これ以降はローカルのOverleaf不使用時はDocker Desktopから停止しておくことができます)、
以下を実行し、表示されたアドレスに飛んでパスワードを設定します。
docker exec sharelatex /bin/bash -c "cd /var/www/sharelatex; grunt user:create-admin --email=[your e-mail address]"
あとは設定したメールアドレスとパスワードでログインできます。
以上で完成です。
\RequirePackage{plautopatch} \documentclass[uplatex,dvipdfmx]{jsarticle} \title{サンプル文書} \date{\today} \author{著者} \begin{document} \maketitle \begin{abstract} 日本語もテストしてみます。 \end{abstract} \section{はじめに} ローカルからテスト。 \[ \frac{1}{\sqrt{2\pi\sigma^2}} \exp\left\{-\frac{(x-\mu)^2}{2\sigma^2}\right\} \] \end{document}