WSL の Ubuntu に MongoDB をインストールする

Windows Subsystem fot Linux(WSL) 上で動いている Ubuntu に MongoDB をインストールした時の記録です。
Ubuntuリポジトリにあるもの(この時点でVer. 2.6.10)ではなく、MongoDB の公式リポジトリ(この時点でVer. 3.4.9)から取ってきて(インストールします。

MondoDB の起動にかかる部分以外は公式ドキュメントの通りです。

WSL の Ubuntu はこんなバージョン

$ cat /etc/os-release
NAME="Ubuntu"
VERSION="16.04.3 LTS (Xenial Xerus)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 16.04.3 LTS"
VERSION_ID="16.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
VERSION_CODENAME=xenial
UBUNTU_CODENAME=xenial

aptで使われる公式リポジトリ用の公開鍵を登録します。

$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6

apt-get で見に行く MongoDB のリポジトリを見に行くリストを追加します。

$ echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

これで公式パッケージをインストールできます。

$ sudo apt-get update
$ sudo apt-get install -y mongodb-org

ドキュメントでは service mongod start でスタートさせていますが、/etc/init.d/ を見ても mongod がないので起動できません。 GitHub にある MongoDB のリポジトリから debian 用の init スクリプトを取ってくるといいようです。

2017/10/25追記

Fall Creator Updateを当てた後の WSL な Ubuntu では正常に init スクリプトが作成されました。

$ cd /tmp
$ wget https://raw.githubusercontent.com/mongodb/mongo/master/debian/init.d -O mongod
$ chmod +x ./mongod
$ sudo mv mongod /etc/init.d/
$ sudo service mongod start

これで起動できるはずです。

$ mongo

でプロンプトに入れれば成功です。