このすみノート

Webエンジニアが技術や趣味を書くブログです。

Dockerを活用し、WindowsにRe:VIEWによる技術書執筆環境を構築する

先日、Kuin言語の本を書いてみたいという記事を書いてみたのですが、その関係で自宅のPC環境をMacからWindowsに変更してみました。

f:id:konosumi:20181020012640p:plain

Windowsは久々に起動したので、まずWindowsの更新にとても時間がかかりました。Firefoxも、同じく久々に起動したため、32ビットのVersion 53から64ビットのVersion 62へ、一気にジャンプアップしました(驚き)。

せっかくWindowsを起動したわけですから、Kuin言語で遊びつつ、WindowsでもRe:VIEWで技術書を書きたくなります。

過去に「Dockerを活用し、Re:VIEWによる技術書の執筆環境を構築する最短経路 for Mac」という記事を書いたのですが。同じような手順で、Windowsでも技術書が書きたかったため、やってみた結果を共有します。

www.konosumi.net

Docker for Windowsはインストールできない

なんとも困ったことに、「Docker for Windows」はインストールできませんでした。Proでないと駄目みたいです。

自宅パソコンのWindows 10は、Homeでした。

f:id:konosumi:20181020013701p:plain

Windows Subsystem for Linux(WSL)はうまくいかなかった

WSL自体はインストールできたのですが、何故かUbuntsuをインストールしようとすると、毎回Windowsが異常終了します。

2回ほどやり直してみたのですが、いずれも失敗したため、この方法は諦めました。

Linux上でDockerを動かせば、楽ができると思ったのですが。

f:id:konosumi:20181020014030p:plain

Docker Toolboxを使ってみる

色々と調べてみた結果、「Docker Toolbox」であれば動かせそうという情報に行き着きました。実際に試してみたのですが、これも少し苦戦しました。

qiita.com

最初、何も選択は変えずにインストールしてみました。しかしながら、デスクトップに増えた「Docker Quickstart Terminal」から起動しても、IPアドレス(ネットワーク)関連で失敗してつまづきます。

Install VirtualBox with NDIS5 driverのチェックをつける必要がある

原因を調査した結果、インストール設定に問題があることが分かりました。

どうすれば良かったのかと申しますと、「Install VirtualBox with NDIS5 driver」のチェックを、必ず付ける必要があったのです。

f:id:konosumi:20181020014724p:plain

チェックをつけると「Docker Quickstart Terminal」のセットアップが無事に成功し、起動完了のクジラが表示されるようになります。

PDFの生成方法はMacと同じです

「Docker Quickstart Terminal」上で、Macと同じく「docker run」を叩きます。

そうすれば、プロジェクト直下にPDFファイルが生成されます。

docker run \
 --rm \
 -v $(pwd):/work \
 -v $(pwd)/.texmf-var:/root/.texmf-var \
 vvakame/review:latest /bin/sh -c "cd /work && review-pdfmaker config.yml"

紆余曲折ありましたが、結果的にはMacと同じdockerコマンドで、Re:VIEWからPDFを生成することに成功しました。

これで、MacでもWindowsでも、同じように技術書が書けそうです。

f:id:konosumi:20181020020534p:plain

Dockerを使わないという選択肢もありである

「Docker Toolbox」を使えば、Windows 10 Homeでも大丈夫ということは分かりました。しかしながら、Windowsとdockerの組み合わせは、私と同じく悪戦苦闘した人も多いのではないかと思います。

実は、KCさんの「今日から始める!Re:VIEW執筆環境構築」という本があります。私は、技術書典5の会場で購入しました。

本書は、Windows向けの執筆環境を構築するための本です。

f:id:konosumi:20181020095003j:plain

KCさんの本では、dockerを使わずに、Ruby経由で普通にRe:VIEWをインストールしています。

私は、Macと同じやり方をしたかったため、PDFの生成手順をdockerで統一してみることにしました。ただ、素直にRe:VIEWをインストールして使う選択肢もありだと思います。

さいごに

取り急ぎ、Windowsでも、Macと同じように技術書を書く環境は整いました。docker経由でもRubyのgem経由でも、どちらでもPDFは作れます。

あとは本を書いていくだけですが、しばらくはKuin言語の勉強をする必要があるので、知見を溜めつつのんびり書いていこうと思います。

www.konosumi.net