DIVE INTO CODE

人材紹介会社と連携した本気のカリキュラムと手厚いサポートを提供するプログラミングスクール。
最短わずか6ヶ月でRailsエンジニアとしての独立・転職を支援します。

DIVE10

DIVE10_macのゴール

※ Mac編です。WindowsPCをお使いの方はWindows編をご覧ください。
DIVE10は、ローカル開発環境構築について学びます。

・ Homebrewを使用してローカル環境開発を作成します

ローカル開発環境が必要な理由

ここまで使用してきたCloud9は、インターネットにアクセスをしてWebブラウザ上で使います。そのため、通信速度の影響を受けやすく、メモリの消費も大きいため処理速度が遅いという難点があります。
また、無料アカウントで利用するとworkspaceに外部から容易にアクセスすることができるためセキュリティ上望ましくありません。

高速に動作する環境で開発するために、ローカル(自分のPC)に開発環境を構築します。

ローカル開発環境を構築するためのツール

ローカル開発環境を構築する方法はいくつかありますが、ここからはHomebrewというツールを使って構築していきます。

Homebrewとは

Homebrewはパッケージマネージャの一種です。

パッケージマネージャとは、コンピュータに何のソフトウェアがインストールされたかを記録し、新しいソフトウェアのインストール・新しいバージョンへのソフトウェアの更新・以前インストールしたソフトウェアの削除を容易に行えるようにするプログラムです。

パッケージマネージャを使用することで、作業環境を簡単に、素早く構築ができるようになります。
具体的には、ファイルをダウンロード、インストールを手作業ではなくコマンドで実行できるようになります。


Gitをインストールする

①パッケージマネージャを使用しない場合
・GitをGitの公式サイトからダウンロードする、
・ダウンロードしたファイルを開き、インストールする

②パッケージマネージャを使用する場合
・ターミナルで、brew install gitとコマンドを打つ

実際に環境構築をする

Xcode のインストール

App Storeを開き、Xcodeと検索しましょう。

入手 → App をインストール をクリックします。

Command Line Tools をインストールします。

Finder → アプリケーション → ユーティリティ と進み、ターミナルを開きましょう。

https://diveintocode.gyazo.com/7c90a9f719bf0a90833bc51ef4daf822

https://diveintocode.gyazo.com/24129072b8a99e03492c52688be31695

ターミナルは、環境設定から以下のように設定をしましょう。
・画面の背景色を黒、透過なし
・文字色を緑
プロファイルの「Homebrew」を選択して デフォルト に設定すると次回からこの設定のターミナルを起動できるよになります。

ターミナルを起動できたら、次のコマンドを実行しましょう。

xcode-select --install

インストール画面が表示されたらインストールを行ってください。

Homebrew のインストール

ターミナルで次のコマンドを実行しましょう。

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

途中、パスワードが求められます。操作しているのMac端末のログイン・パスワードを入力してください

$ ruby -e "$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/intall)"
==> This script will install:
/usr/local/bin/brew
/usr/local/Library/...
/usr/local/share/doc/homebrew
/usr/local/share/man/man1/brew.1
/usr/local/share/zsh/site-functions/_brew
/usr/local/etc/bash_completion.d/brew
==> The following directories will be made group writable:
/usr/local/.
/usr/local/bin
==> The following directories will have their owner set to nakaotakahiro:
/usr/local/.
/usr/local/bin
==> The following directories will have their group set to admin:
/usr/local/.
/usr/local/bin

Press RETURN to continue or any other key to abort
==> /usr/bin/sudo /bin/chmod g+rwx /usr/local/. /usr/local/bin
Password:

MacPorts でインストールされた Ruby をアンインストールする

MacOSXには、最初からRubyがインストールされています。しかし、バージョンが古いこともありそのまま使うことはしません。
Rubyが既にインストールされているかどうかを調べるためには、次のコマンドを実行してください。

which ruby

/opt/local/bin/rub と表示された場合はインストールされています。

$ which ruby
/opt/local/bin/ruby

Mac 端末に、 MacPorts で Ruby がインストールされている場合は、アンインストールします。今回は、Homebrewを使うため、MacPortsでインストールされたものが影響を及ぼさないようにするためです。

MacPortsは、FedoraのyumやDebian GNU/Linuxのaptのような、オープンソフトウェアのパッケージ管理です。MacPortsを導入すると、portコマンドを使って、“ports”に登録されているオープンソフトウェアのインストール、アンインストール、アップデートなどを簡単に行うことが出来ます。

次のコマンドを実行してください

sudo port uninstall ruby

途中、パスワードが求められます。操作しているのMac端末のログイン・パスワードを入力してください

$ sudo port uninstall ruby
Password:
Warning: port definitions are more than two weeks old, consider updating them by running 'port selfupdate'.

##RVM の除去

MacにRVMがインストールされている場合は除去します、次のコマンドを実行してください。
DIVE INTO CODEでは、Rubyの管理パッケージにrbenvを使用するため、rvmがインストールされていると干渉し合ってしまいます。

rvm implode

homebrewを最新にする

以下のコマンドを実行して、homebrewを最新版にします。

brew upgrade

##rbenv、ruby-build のインストール

Rubyのバージョンを管理するrbenvと、ruby-buildをインストールします。

ターミナルで次のコマンドを順に実行してください。

brew install rbenv ruby-build
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
source ~/.bash_profile

##Ruby のインストール

ターミナルで次のコマンドを順に実行してください。

Rubyのバージョン2.3.0を指定してインストールします。時間が約15分かかリマす。お待ちください。

rbenv install 2.3.0

標準で使うRubyのバージョンを2.3.0にします。

rbenv global 2.3.0

ターミナルでRubyのバージョンを確認します。次のコマンドを入力してください。

ruby -v
$ ruby -v
ruby 2.3.0p95 (2015-04-13 revision 50295) [x86_64-darwin15]

ruby 2.3.0 が表示されていればインストールは成功です。

##Bundler のインストール

gemを管理する、bundlerというgemをインストールします。
ターミナルで、次のコマンドを実行してください。

gem install bundler

PostgreSQLをインストールする

Homebrewを使用して、PostgreSQLをインストールします。

brew install postgresql

PostgreSQLをインストール後、以下のコマンドを実行します。

brew services start postgresql

※以上のコマンドで、postgresqlが起動しない場合以下のコマンド群を実行する

ln -sfv /usr/local/opt/postgresql/*plist ~/Library/LaunchAgents
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

これで、PostgreSQLの設定は終了です。

Gitをインストールする

HomebrewでGitをインストールします。

brew install git

achieveをローカル上に構築する

:pencil2: 今まで作成してきたachieveをgit cloneしましょう。

git cloneすることで、ローカル環境開発内にCloud9と同じachieveを作成することができます

git cloneするためには、GitHubとssh認証する必要があります。
また、SSH認証を行うためには、ローカル開発環境内で公開鍵を作成してGitHub上に置く必要があります。

:pencil2: ssh-keygenコマンドで公開鍵、秘密鍵を作成しましょう。
cd ~/.ssh
ssh-keygen -t rsa -C "GitHubにユーザ登録したemail"

ssh-keygenコマンドを実行すると、それぞれこのような文章のところで停止するのでenterを押しましょう。

vagrant@vagrant-ubuntu-trusty:~/.ssh$ ssh-keygen -t rsa -C "GitHubにユーザ登録したemail"
Generating public/private rsa key pair.
Enter file in which to save the key (/home/vagrant/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:

最終的に、下図のようになれば成功です。

Your identification has been saved in /home/vagrant/.ssh/id_rsa.
Your public key has been saved in /home/vagrant/.ssh/id_rsa.pub.
The key fingerprint is:
cf:52:74:81:b5:ef:9d:34:1d:5e:3a:06:96:b7:91:9d hoge3@gmail.com
The keys randomart image is
+--[ RSA 2048]----+
|           oo    |
|          .  + o.|
|          . * +Eo|
|         . o +.++|
|        S .   *+.|
|         +   o.oo|
|        . o   ...|
|         .       |
|                 |
+-----------------+
:pencil2: ls -la コマンドで公開鍵、秘密鍵が生成されたか確認します。
$ ls -la
省略
-rw-r--r-- 1 401 May  1 05:00 id_rsa.pub

このように、id_rsa.pubという公開鍵が生成されていれば、成功です。

あとは、Cloud9の公開鍵をGitHubに登録した時と同じように、GitHub上にSSHキーを登録します。

:pencil2: catコマンドで文字列をCloud9と同様にGitHubに登録しましょう、
cat ~/.ssh/id_rsa.pub

+GithubのSetting→SSH and GPG keys より、New Key
+https://diveintocode.gyazo.com/dd86a23dde5a848126657f3a7e1cbf87

achieveをGitHubからcloneする。

cloneするために、GitHubからSSH protcol URLをコピーしましょう。

https://diveintocode.gyazo.com/bab0033904aa6826cdad2e542c54a4ec

sshになっていることを確認しコピーします

https://diveintocode.gyazo.com/0a70168afc24afb6ad5b408fa799957a

cd ~/workspace
git clone "コピーしたSSH protcol URL"

cloneすると、github上にあるフォルダやファイルをmac上にインストールすることができます。

$ git clone コピーした`SSH protocol url`

Cloning into 'achieve'...
Warning: Permanently added the RSA host key for IP address '192.30.252.123' to the list of known hosts.
remote: Counting objects: 284, done.
remote: Compressing objects: 100% (10/10), done.
remote: Total 284 (delta 0), reused 0 (delta 0), pack-reused 273
Receiving objects: 100% (284/284), 377.89 KiB | 99.00 KiB/s, done.
Resolving deltas: 100% (104/104), done.
Checking connectivity... done.
:pencil2: アプリをインストールすることができたので、実際にアプリを起動してみましょう。

lsコマンドでアプリが存在しているか確認します。

$ ls
achieve

アプリが存在していたら、cdコマンドでアプリ上に移動しましょう。

$ cd achieve/

gemファイルをインストールします。

bundle install

.envなどを使い、自分で環境変数を作成する必要があります。

DBMS内にデータベースとテーブルを作成します。

rake db:create db:migrate

##アプリケーションの起動

ターミナルで、次のコマンドを実行してください。

rails s

##最後に動作確認をします。

Webブラウザで http://localhost:3000/ を開きます。

これで、ローカル環境を構築することができました。

herokuをインストールする

herokuに接続するためのソフトウェアをbrewを使用して、インストールします。

brew install heroku

インストール後herokuにログインしましょう。

heroku login
:pencil2: Herokuのremote設定を再度行う
git remote add heroku HerokuのGitURL

HerokuへのGitURLは、HerokuのWebサイトから確認できます。

該当アプリを開いた後に、settingをクリックするとGitUrlを見ることができます。

https://dashboard.heroku.com/apps

https://diveintocode.gyazo.com/a397e26ad02a28d70f840610fc63f921

テキストエディタをインストールする

DIVE INTO CODEでは、atomを推奨しています。

https://atom.io/

DIVE10課題

自分のローカル開発環境を構築してください。

ローカル開発環境内のターミナル上でrails sを実行した際のログを提出すること
正常に起動していれば合格です。

課題に取り組んでみましょう。ご質問等ありましたら無料説明会で承ります。

DIVE INTO CODEの無料説明会を開催中

ハイレベルなプログラミングに入門したい方、フリーランスエンジニアになりたい方、
つくりたいアプリがある方、一歩前へ踏み出すお手伝いいたします。

無料説明会はこちら