はじめに
Rubyは全く触ったことがないのですが、とりあえず作ってみました。
同じようにRuby未経験で環境構築してみたい方に少しでも参考になれば。
公開を考えたときにLinuxサーバーで動くように作ったほうが良いので、
VirtualBox内のUbuntuマシンにRuby on Railsの開発環境を作ってみました。
記事構成を以下の2つに大きく区切って書いていきます。
準備編として仮想マシン環境の準備まで。
開発編としてRubyその他のインストールをしHelloWorldするまで。
話はそれますが、なにやらWindows 10上でLinuxを使うことができる、Windows Subsystem for Linuxというのがあるそうで。
それを使えばVirtualBoxで仮想マシンを作らなくてもWindowsから気軽にLinuxを試すことができるらしいです。
知らなかった。
さらに、Windows Subsystem for Linux 2というのを新たに発表し、さらに使いやすくなったとか。
しかし、それが発表されたのが2019年5月6日(現地時間)。
執筆時点は2019年5月7日(日本時間)。タイムリー過ぎでしょう。
サクッと動かすのが目的なのでそのままVirtualBoxでやっていきますが、気になった方はそちらで環境作ってみてもいいかもしれません。
準備編~仮想マシン環境の準備~
VirtualBoxのインストール(執筆時点の最新版は6.0)
https://www.virtualbox.org/
Ubuntu18.04 LTSのインストール
https://www.ubuntu.com/download/desktop
以下の記事でVirtualBoxとUbuntu18.04 LTSのインストール、
コピペや共有フォルダの設定などの初期設定方法が書いてあります。
Windows 上の VirtualBox に Ubuntu 18.04 LTS をインストールする
開発編~Rubyその他をインストールしHelloWorld~
Rubyのインストール
Rubyはrbenvを使ってインストールするので、まずはrbenvを使えるようにする。
Rubyのバージョン管理ツールだそう。いろいろ見たがとりあえずrbenv使っとけ的な感じだったので便乗。
Rubyに必要なパッケージやソフトウェアのインストール
sudo apt install autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm5 libgdbm-dev sqlite3 libsqlite3-dev
※上記全て必要かどうかは定かでありません。細かくみておらず、他のサイトを見ると共通箇所もあれば違うところもあったりしました。上記で入れておけばとりあえずエラーは出なかったという感じです。
rbenvのインストール
githubのリポジトリからrbenvをインストールします。
まっさらな状態からだとgitすら入っていないはずなので、先にgitのインストールもお忘れなく。
sudo apt install git
git clone https://github.com/rbenv/rbenv.git ~/.rbenv<
成功すると以下のようになります。
ubuntu@ubuntu-VirtualBox:~$ git clone https://github.com/rbenv/rbenv.git ~/.rbenv
Cloning into '/home/ubuntu/.rbenv'…
remote: Enumerating objects: 15, done.
remote: Counting objects: 100% (15/15), done.
remote: Compressing objects: 100% (13/13), done.
remote: Total 2759 (delta 4), reused 6 (delta 2), pack-reused 2744
Receiving objects: 100% (2759/2759), 521.23 KiB | 1.17 MiB/s, done.
Resolving deltas: 100% (1724/1724), done.
続いてruby-buildというのもインストール
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
実行結果
ubuntu@ubuntu-VirtualBox:~$ git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
Cloning into '/home/ubuntu/.rbenv/plugins/ruby-build'…
remote: Enumerating objects: 30, done.
remote: Counting objects: 100% (30/30), done.
remote: Compressing objects: 100% (19/19), done.
remote: Total 9742 (delta 10), reused 24 (delta 7), pack-reused 9712
Receiving objects: 100% (9742/9742), 2.07 MiB | 2.91 MiB/s, done.
Resolving deltas: 100% (6357/6357), done.
ubuntu@ubuntu-VirtualBox:~$
続いて環境設定
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
最後にrbenvのバージョン確認をしてバージョンが表示されればOK
rbenv --version
rbenv 1.1.2-2-g4e92322
Rubyのバージョン一覧を確認する
rbenv install --list
安定板は2.6.3(執筆時点)とのことなのでそちらを指定してインストールする
https://www.ruby-lang.org/ja/downloads/
rbenv install 2.6.3
インストールが終わると以下の表示
ubuntu@ubuntu-VirtualBox:~/.rbenv$ rbenv install 2.6.3
Downloading ruby-2.6.3.tar.bz2…
-> https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.3.tar.bz2
Installing ruby-2.6.3…
Installed ruby-2.6.3 to /home/ubuntu/.rbenv/versions/2.6.3
バージョンを指定する
rbenv global 2.6.3
gemをアップデートし、bundlerをインストール
gemを使用したときに生成されるドキュメントが不要な際には以下の設定で無効化しておく
echo "install: --no-document" >> $HOME/.gemrc
echo "update: --no-document" >> $HOME/.gemrc
Ruby on Railsのインストール
gem install rails
バージョン確認
rails -v
執筆時はRails 5.2.3となりました。
任意のディレクトリを作成し、その配下で以下のようにコマンドを打つ
※railsAppの部分はプロジェクト名
rails new railsApp --skip-bundle
ずらーっとファイルが作成される
そのままではうまくいかないため、ディレクトリに作成されたGemfileの箇所を変更すると書いてあった。
おそらくこれは一時的なもので、必要ない処理かもしれない。
一応以下参照。
https://qrunch.net/@ryecroft21/entries/0d6t3AdvaWueZcO6
作成したプロジェクト配下にて以下のコマンド
bundle install
ようやく、起動
rails s
#上記はrails server の省略形で、どちらで入力してもOKです
以下のような表示がでる
ubuntu@ubuntu-VirtualBox:~/rails/railsApp$ rails s
=> Booting Puma
=> Rails 5.2.3 application starting in development
=> Run rails server -h for more startup options
Puma starting in single mode…
Version 3.12.1 (ruby 2.6.3-p62), codename: Llamas in Pajamas
Min threads: 5, max threads: 5
Environment: development
Listening on tcp://localhost:3000
Use Ctrl-C to stop
表記にしたがい、localhostの3000番にアクセスしてみる
こんな感じのゆるいイラストが表示されればOK
Hello World
最後にHello Worldをして、この記事の終わりとします。
トップページを作成します。
railsでページを作成する際はコマンドでできるようです。
この辺はLaravelとかを触っていたら馴染みやすいですね。
topというページを作ってみたいと思います。
rails generate controller Top index
これでコントローラーとビュー、ルーティングが設定できてしまいます。
VSCodeとか使いやすいエディターでプロジェクトフォルダを開きましょう。
~/railsApp/app/views/top/index.html.erb
<h1>Hello World!</h1>
実行結果