開発したアプリなど一覧

WSL Ubuntu 18.04 に Ruby on Rails 開発環境を構築する

先日持ち運び用の Windows マシンを購入したので Ruby on Rails の開発環境を整えることにした。

Lenovo ThinkPad T480 を購入した

OS は Windows だが開発環境は Windows Subsystem for Linux で動く Ubuntu に構築する。WSL なら普段利用している Linux のコマンドなどがそのまま利用できるので便利だ。

WSL Ubuntu の導入方法については以下の記事を参照してほしい。

Windows 10 に WSL の Ubuntu 18.04を入れる

rbenv のインストール

ruby は rbenv を利用してインストールするので、rbenv を使えるようにしなければならない。

GitHub - rbenv/ruby-build: Compile and install Ruby

まずは今回必要となるっぽいパッケージをインストールする。

$ sudo apt-get install git curl g++ make libssl-dev libreadline-dev libyaml-dev libxml2-dev libxslt-dev sqlite3 libsqlite3-dev nodejs build-essential patch zlib1g-dev liblzma-dev pkg-config libmysqlclient-dev<

パッケージがインストールできたら rbenv を github から clone してビルドする。

$ git clone https://github.com/rbenv/rbenv.git ~/.rbenv<
$ cd ~/.rbenv && src/configure && make -C src<

ちなみにこんなことをしなくても Ubuntu は apt で rbenv をインストールできる。面倒が嫌いならそっちでも良いと思う。

rbenv が正常にインストールできたら PATH を設定する。

$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc<
$ echo 'eval "$(rbenv init -)"' >> ~/.bashrc<
$ source .bashrc

これで rbenv コマンドが利用できるようになれば OK

次に ruby-build をインストールする。

$ mkdir -p ~/.rbenv/plugins
$ git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build

これで rbenv install コマンドが利用できるようになる。このコマンドで現時点での最新版 2.5.1 をインストールよう。

$ rbenv install 2.5.1
$ rbenv global 2.5.1

install には多少時間がかかるのでのんびり待とう。インストールができたら rbenv global コマンドで利用するバージョンを指定するのも忘れずに。

ruby がインストールできたら rails で必要な bundle をインストールする。

$ gem install bundle

最後に Rails プロジェクトに移動して bundle install コマンドを実行して必要な gem をインストールする。

$ cd /path/to/rails-project
$ bundle install
$ bundle exec rails s
=> Booting WEBrick
=> Rails 4.2.8 application starting in development on http://localhost:3000
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server
[2018-09-28 22:45:49] INFO  WEBrick 1.4.2
[2018-09-28 22:45:49] INFO  ruby 2.5.1 (2018-03-29) [x86_64-linux]
[2018-09-28 22:45:49] INFO  WEBrick::HTTPServer#start: pid=834 port=3000

これで rails アプリが立ち上がりブラウザからアクセスできれば OK だ。

Sponsored Link

コメント