Ubuntu16.04でRuby on Rails5の開発環境構築
Vagrant環境のUbuntu16.04でRuby on Rails5の開発環境を整えた作業の備忘録です。
なお作業は基本的に一般ユーザーの権限で行い、必要に応じてsudoコマンドを使用しています。
環境は以下
- Ubuntu16.04
- Ruby2.5.1
- Rails5.2.1
Ubuntuデスクトップ環境の日本語化
キーボードをJIS配列に変更
Vagrantではubuntu/xenial64のboxを利用しましたが、日本語化されているないのでまずは日本語化を行いました。導入の方法は前回の記事を参照ください。
以下のコマンドを実行してキーボードをJIS配列に変更します。
$ sudo dpkg-reconfigure keyboard-configuration
下のような画面になるのでJIS配列になるように選択していきます。
- Generic 105-key (Intl) PC
- Japanese
- Japanese
- The default for the keyboard layout
- No compose key
- NO
次に右上の歯車ボタンからSystem Settingsを選択して、検索からText Entryの設定に入ります。
Input sources to useの欄の左下にある+-ボタンを操作してJapaneseだけになるようにします。下の画像は各種設定終了後のためMozcも追加されていますが無視してください。また、Switch to next source using:のボックスを選択して「半角/全角」ボタンを入力してください。これで、半角/全角ボタンで英字入力と日本語入力を切り替えられるようになります。
日本語化
デスクトップの日本語化対応を行います。
$ sudo apt-get install language-pack-ja-base language-pack-ja $ localectl set-locale LANG=ja_JP.UTF-8 LANGUAGE="ja_JP:ja" $ source /etc/default/locale
続いて、先ほどと同じSystem SettingsかたLanguage Supportを選択します。
LanguageのタブのLanguage for menus and windowsで日本語を一番上に持っていきます。ログインし直すか、再起動すればデスクトップが日本語化されます。
日本語入力対応
日本語入力のためのインプットフレームワークパッケージをインストールします。
$ sudo apt-get install fcitx fcitx-mozc
インストールが終わったら先ほどのLanguage Supportの設定からキーボード入力に使うIMシステムをfcitxに変更してください。
もう一度ログインしなおしてください。
ログインしたら、右上のキーボードのマークをクリックして「現在の入力メソッドの設定」を選択します。設定画面が開いたら、Input Methodから「キーボード-日本語」「Mozc」の二つを+ボタンを押して追加します。以下の画像のようになっていればよいです。
Rails5の導入
Rubyの準備
まずはRubyのバージョン管理ができるrbenvをインストールします。だたし、aptの標準リポジトリだとrbenvのバージョンが古いためruby2.3までしかインストールできません。そこでgitから直接rbenvを導入します。rbenvとrubyをインストールするためのruby-buildをgitリポジトリからcloneしてきます。
$ git clone https://github.com/rbenv/rbenv.git ~/.rbenv
$ git clone https://github.com/sstephenson/ruby-build.git .rbenv/plugins/ruby-build
続いて、.bashrcに必要な記述を追加します。sourceコマンドで現在のシェルで記述を有効化します。.bashrcはシェルを起動するたびに読み込まれるファイルです。以降はターミナルを開くたびに自動的に読み込まれるのでsourceコマンドは必要ありません。
$ echo 'export PATH="~/.rbenv/bin:$PATH"' >> ~/.bashrc $ echo 'eval "$(rbenv init -)"' >> ~/.bashrc $ source ~/.bashrc
これでrubyをインストールしてversion管理する準備が整ったので、必要なversionのインストールを行います。今回はruby 2.5.1です。rbenvでインストール可能なrubyのversionは「rbenv install -l」で確認することができます。
$ rbenv install -l
$ rbenv install 2.5.1
$ rbenv global 2.5.1
今回は2.5.1をインストールしましたが、rbenvを利用しているため必要に応じてversionを切り替えることも可能です。その都度インストールすればよいです。最後のglobalで現在使用するrubyのversionを指定しています。globalをlocalにすることでカレントディレクトリで利用するversionの指定もできるようです。
Railsの導入
最初に、rubyのパッケージ(gem)依存性管理を行うbundlerをインストールします。
$ gem install bundler
続いてrailsの開発環境をテストするディレクトリを作成して、初期化します。本開発を行う場合プロジェクト名などをディレクトリ名にすればよいと思います。
$ mkdir ~/rails-test $ cd ~/rails-test $ bundle init
Gemfileが作成されるので、ここにrailsを追加します。Gemfileは必要なパッケージを記述しておくことで簡単にパッケージをインストールするためのファイルです。最終行がrailsのパッケージ追加を指定する記述です。
# frozen_string_literal: true source "https://rubygems.org" git_source(:github) {|repo_name| "https://github.com/#{repo_name}" } gem "rails", '~> 5.0'
準備ができたのでプロジェクトのディレクトリにrailをインストールします。Gemfileを読み込んでパッケージをインストールするためにbundleを利用します。プロジェクトにだけパッケージを導入するためににインストール先の指定をvendor/bundleを指定します。この指定を行わない場合、現在使用しているruby環境すべてにパッケージがインストールされてしまいます。1度指定しておけば、同じディレクトリでは次回以降は自動で指定されます。
$ bundle install --path vendor/bundle
$ bundle exec rails new --skip-bundle rails-app
サブディレクトリに必要なパッケージをインストールします。
$ cd rails-app $ bundle install --path vendor/bundle
railsを起動します。
$ bundle exec rails server
起動出来たらwebブラウザからアクセスしてみましょう。アドレスバーに「localhost:3000」と入力します。以下の画面が表示されたら成功です。
以上で終了です。
参考
WindowsにVagrantとVirtualBoxを使ったUbuntu GUI開発環境を構築する