ITと雑記とド田舎と

ド田舎在住エンジニアがIT備忘録と雑記を書くブログです

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配列になるように選択していきます。

f:id:kdn-1017-wttd:20180818152209p:plain

  1. Generic 105-key (Intl) PC
  2. Japanese
  3. Japanese
  4. The default for the keyboard layout
  5. No compose key
  6. NO

次に右上の歯車ボタンからSystem Settingsを選択して、検索からText Entryの設定に入ります。

f:id:kdn-1017-wttd:20180818153125p:plain

 

Input sources to useの欄の左下にある+-ボタンを操作してJapaneseだけになるようにします。下の画像は各種設定終了後のためMozcも追加されていますが無視してください。また、Switch to next source using:のボックスを選択して「半角/全角」ボタンを入力してください。これで、半角/全角ボタンで英字入力と日本語入力を切り替えられるようになります。

f:id:kdn-1017-wttd:20180818153602p:plain

日本語化

デスクトップの日本語化対応を行います。

$ 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に変更してください。

f:id:kdn-1017-wttd:20180818160140p:plain

もう一度ログインしなおしてください。

ログインしたら、右上のキーボードのマークをクリックして「現在の入力メソッドの設定」を選択します。設定画面が開いたら、Input Methodから「キーボード-日本語」「Mozc」の二つを+ボタンを押して追加します。以下の画像のようになっていればよいです。

f:id:kdn-1017-wttd:20180818160640p:plain

 

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

 railsの初期化をサブディレクトリを作成して行います。

$ bundle exec rails new --skip-bundle rails-app

サブディレクトリに必要なパッケージをインストールします。

$ cd rails-app
$ bundle install --path vendor/bundle

railsを起動します。

$ bundle exec rails server

起動出来たらwebブラウザからアクセスしてみましょう。アドレスバーに「localhost:3000」と入力します。以下の画面が表示されたら成功です。

f:id:kdn-1017-wttd:20180818180727p:plain

 

以上で終了です。

 

参考

WindowsにVagrantとVirtualBoxを使ったUbuntu GUI開発環境を構築する

Ubuntu 16.04にRuby 2.5.0をインストールするメモ

Ubuntu 16.04 (Xenial) でRoRをはじめる