できるようになること
Apple M2 チップの MacBook で日本語対応の Overleaf をローカルで動かす
試した環境
MacBookPro (Apple M2 チップ, 13 インチ) + macOS 13.2 (22D49)
前準備でしておくべきこと
-
docker
とdocker-compose
が使えるようにします -
git
やrealpath
を使えるようにします - 作業したいディレクトリ(本記事内では
overleaf-local
)を作りそこへ移動します
基本セットアップ
-
以下の 2 つの GitHub レポジトリを
clone
しますターミナル# pwd -> overleaf-local git clone https://github.com/overleaf/overleaf git clone https://github.com/overleaf/toolkit.git ./overleaf-toolkit
※
overleaf-toolkit
内でbin/doctor
を実行することで前準備が整っているかどうかが分かります
※bin/doctor
の結果のHost Information
のところは無視しても良さそうです -
以下のコマンドを実行します(所要時間:10 分前後)
ターミナル# pwd -> overleaf-local cd overleaf/server-ce make build-base make build-community
-
以下のコマンドを実行します(所要時間:数分)
ターミナル# pwd -> overleaf-local/overleaf/server-ce cd ../../overleaf-toolkit bin/init mkdir data/sharelatex data/mongo data/redis (data/nginx) bin/up
※
data/nginx
は必要な人のみで大丈夫です -
ログが表示されるようになるので Google Chrome などのブラウザから
http://localhost/launchpad
にアクセスしてアカウントを作成すれば使えるようになっているはずです
※ 詳細は公式ドキュメントを見てください
日本語対応
日本語自体対応していなかったり $Lua\LaTeX$ の ltjsarticle
などのドキュメントクラスが使えなかったりするので以下の通りに sharelatex
の Docker イメージをアップデートします
-
sharelatex
の Docker コンテナに入りTexLive
を更新します(所要時間:1 時間以上)ターミナル# pwd -> [any directory] docker exec -it sharelatex bash tlmgr update --self tlmgr install scheme-full
※ 基本セットアップした際に動かしていた Docker コンテナを
^control + C
などで停止させていた場合はoverleaf-toolkit/bin/start
で再起動してから実行してください -
- でコンテナに加えた変更を新しい Docker イメージとしてコミットします(所要時間:数分)
ターミナル# pwd -> [any directory] docker commit sharelatex sharelatex/sharelatex:[tag name]
※ 参考 1.では
[tag name] = with-texlive-full
としています -
起動していた Docker コンテナを停止します
ターミナル# pwd -> overleaf-local/overleaf-toolkit bin/stop
-
更新した Docker イメージでも起動するように
overleaf-toolkit/bin/docker-compose
の 70 行目付近を修正しますdocker-compose- local full_image_spec="$image_name:$SHARELATEX_IMAGE_VERSION" + local full_image_spec="$image_name:[tag name]"
-
overleaf を再起動します
ターミナル# pwd -> overleaf-local/overleaf-toolkit bin/up
-
ブラウザ上で
http://localhost
にアクセスすれば日本語対応した Overleaf が使えるようになっているはずです
↑こんな感じ(余談)卒論を Overleaf で書きましたがサーバーが落ちたら怖いのでバックアップ用としても使えそうですね(自虐ネタ)
-
bin/stop
とbin/start
で止めたり起動したりできます
では良い $\LaTeX$ ライフを