Bash on Ubuntu on WindowsでWindows上にRails開発環境を構築【備忘録】

2019-07-11

こんにちは。
RubyonRailsを始めようと思ったものの、私のWindowsでの環境構築のあまりの面倒くささに心が折れました。
危うくmacポチりそうになりました笑
一日かけて何とかRailsの開発環境を構築できたので、備忘録としてその過程を残しておこうと思います。

参考にした記事

Windows10 で Bash on Ubuntu on Windows の上で開発ツールとして Rails サーバー を立ててみた話
色々な記事を参考にしたのですが、なぜかどれもうまくいかず。
最終的にこちらの記事を参考にしたら環境構築出来ました。

Bash on Ubuntu on Windowsを使って、Windows上にRails開発環境を構築する

環境構築の手順は以下の通り。
ちなみに私のマシンは、Win10ProのSurfaceLaptopです。
Surfaceは好きなんだけど、キーボードが動かなくなるからUbuntu入れられないのが悲しいところ。

  1. Ubuntuのインストール
  2. Rubyのインストール
  3. Ruby on Railsのインストール
  4. サーバー実行

Ubuntuのインストール

Windowsストアから、UbuntuのBashをインストールできます。
細かい設定とかは難しくなかったので今回は割愛。
ルートディレクトリが結構深いところに設定されているので、最初にWindows上のディレクトリにアクセスできるシンボリックリンクを作成しました。

ターミナルで、

  $ ln -s /mnt/c/Users/Username Linkname

として、Windows上のUserディレクトリへのリンクを作成しました。
ついでにプロパティを開いて、ショートカットコマンドをCtrl + Alt + Tにして、Linuxライクにターミナルを開けるようにしました。

Rubyのインストール

まずはgitを入れてから、必要なパッケージをインストール。

  $ sudo apt-get install git
  $ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
  $ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
  $ git clone https://github.com/sstephenson/rbenv-gem-rehash.git ~/.rbenv/plugins/rbenv-gem-rehash

次に、~/.bashrcを編集します。
vimで~/.bashrcを開いて、

  [[ -d ~/.rbenv  ]] && \
  export PATH=${HOME}/.rbenv/bin:${PATH} && \
  eval "$(rbenv init -)"

こちらを追記。
環境変数PATHを通してるんでしょうか。
source ~/.bashrcで設定を反映したら、いよいよRubyを入れていきます。

まずは必要パッケージのインストール。

  $ sudo apt-get install gcc build-essential libssl-dev libreadline-dev zlib1g-dev

そしてRubyを入れます。
結構時間かかります。
私は2.5.0をインストールしました。

  $ rbenv install 2.0.0
  $ rbenv global 2.5.0

ついでにBundlerも入れちゃいましょう。
Bundlerは、gemの管理ツールです。基本的にgemのインストールはBundlerを通して行うのが良いそうです。

  $ gem install bundler

Ruby on Railsのインストール

では、Railsを入れていきましょう。
ここからは作業ディレクトリごとに行う必要があります。

流れとしては、ディレクトリを作ったら、Bundleを使ってRailsと必要なgemを入れていく感じです。
一部参考にしたリンク先の記事に間違ってる(?)ところがあったので、私が構築に成功した流れを載せておきます。

まずはディレクトリ作成とBundle導入。

  $ mkdir workspace
  $ cd workspace
  //以下workspaceディレクトリにて
  $ bundle init 

次にGemfileを編集します。
同じく、vim Gemfileで、gem “rails"のコメントアウトを外してあげましょう。

  source "https://rubygems.org"
  - #gem "rails"
  + gem "rails"

次にNokogiriのインストール。

  $ gem update --system
  $ sudo apt-get install libxml2 libxml2-dev libxslt-dev
  $ bundle config build.nokogiri "--use-system-libraries --with-xml2-include=/usr/include/libxml2"

次にSQliteを入れておきます。

  $ sudo apt-get install libsqlite3-dev

それから、

  $ rbenv exec gem install bundler
  $ rbenv rehash
  $ bundle install --path vendor/bundler

プロジェクトを作ってみます。

  $ bundle exec rails new Hoge
  $ cd Hoge
  $ bundle install --path vendor/bundler

このあとまたまたGemfileをいじります。
vim Gemfileで、gem 'mini_racer’, platforms: :ruby のコメントアウトを外しました。
次に、config/environments/development.rbをvimで開いて、下の方にあるconfig.file_watcher = ActiveSupport::EventedFileUpdateChecker をコメントアウトします。

最後にもう一度bundle install をすれば完了!

サーバー実行

長い道のりでした。

   $ bin/rails s

これでサーバーが立ち上がります。
ここに来るまで本当に長かった…。

まとめ

Railsの環境構築をWindows上で行うまで、本当に手間がかかりました。
次はMacかUbuntu使えるPCを買おうかなぁ。
ただExcel使えないと困るので、そこがネックなのですが。