普通のRailsエンジニアが【intelliJ】やってみた。

19
普通のRailsエンジニアが IntelliJやってみた。 株式会社エクストーン 豊田陽一

description

 

Transcript of 普通のRailsエンジニアが【intelliJ】やってみた。

Page 1: 普通のRailsエンジニアが【intelliJ】やってみた。

普通のRailsエンジニアが

【IntelliJ】やってみた。

株式会社エクストーン 豊田陽一

Page 2: 普通のRailsエンジニアが【intelliJ】やってみた。

今日のお話

IntelliJ + Ruby PluginでRails開発環境を作る

Page 3: 普通のRailsエンジニアが【intelliJ】やってみた。

Rails開発環境のよくある悩み

手元に開発環境が作れないRubyのインストール面倒

Railsのインストール面倒

RDBMSのインストール面倒

gemのビルドが面倒…というか動かない…etc...

結局Linuxサーバ上でemacs or vim開発に

Page 4: 普通のRailsエンジニアが【intelliJ】やってみた。

IntelliJでRails開発

なんとかIDE使いたい● コード補完● 静的解析● ステップ実行● etc…

Page 5: 普通のRailsエンジニアが【intelliJ】やってみた。

リモートインタプリタ

プロジェクトのコードをリモートホストのインタプリタで実行する機能

開発:ローカルのIntelliJ IDEA実行:リモートのLinuxサーバー

Page 6: 普通のRailsエンジニアが【intelliJ】やってみた。

環境構築手順

リモート: Ruby, Railsのインストール

リモート: Railsプロジェクトの作成

ローカル: Deployment先にリモートホストを登録

ローカル: SDKとしてリモートインタプリタを登録

ローカル: プロジェクト作成と転送設定

ローカル: リモートのRailsプロジェクトと同期

Page 7: 普通のRailsエンジニアが【intelliJ】やってみた。

Ruby, Railsのインストール

RubyインストールRVMなりrbenvなりで好きなように

Railsインストール現時点でRails4以上の動作を確認

既にRailsが動作するリモート環境があるならそのまま利用できるので、この作業は飛ばして大丈夫

Page 8: 普通のRailsエンジニアが【intelliJ】やってみた。

リモートでプロジェクト作成

実際に動作する開発環境この時点でとりあえずサーバーが動くようにすると楽

既に動作する環境があるならここもスキップ

例) 一から作る場合$ rails new project_name --skip-bundle$ cd project_name$ bundle install --path=vendor/bundler

Page 9: 普通のRailsエンジニアが【intelliJ】やってみた。

IntelliJの設定

以下の環境を想定Windows7

メニューの階層等がmac版やlinux版と異なる部分がある

適宜読み替えていただければおそらく対応可能

IntelliJ 13.1.5Ruby Plugin

動作確認はしていないが、おそらくRubyMineでも可能

Page 10: 普通のRailsエンジニアが【intelliJ】やってみた。

Deploymentの設定

[File] > [Other Settings] > [Default Settings...] > [Deployment]

SFTPを選択

接続先のIPもしくはFQDN

困ったらAutodetect押しとくといい

ssh認証を行うユーザー情報を入力

password認証と鍵認証を選択

Page 11: 普通のRailsエンジニアが【intelliJ】やってみた。

リモートインタプリタの設定(1)[File] > [Other Settings] > [Default Project Structure] > [SDKs]

[+] を押して、[Ruby SDK] > [New Remote SDK…]を選択

Page 12: 普通のRailsエンジニアが【intelliJ】やってみた。

リモートインタプリタの設定(2)[Fill from deployment server settings]を押すと、Deploymentの設定を引っ張ってこれる

リモートホストの rubyインタプリタのパスを指定(リモートでwhich rubyとか叩いて、フルパスを取得しよう )

接続設定基本的にはFill from... で自動入力されるままで大丈夫

Page 13: 普通のRailsエンジニアが【intelliJ】やってみた。

プロジェクト作成(1)[File] > [New Project] > [Ruby on Rails]

先ほど作成したRemote SDKを選択

Page 14: 普通のRailsエンジニアが【intelliJ】やってみた。

プロジェクト作成(2)プロジェクト名やローカルの作業ディレクトリを設定

Page 15: 普通のRailsエンジニアが【intelliJ】やってみた。

リモートと同期

(プロジェクトを右クリック) > [Deployment] > [Download from …]

Page 16: 普通のRailsエンジニアが【intelliJ】やってみた。

Railsサーバーの起動(1)[Run] > [Edit Configuration] > [Rails] > [Development: …]

リモートサーバの IP

Railsを動作させたいポート番号

Page 17: 普通のRailsエンジニアが【intelliJ】やってみた。

Railsサーバーの起動(2)[Run] > [Edit Configuration] > [Rails] > [Development: …]

[Builder]タブのRun the script in context of the bundleにチェック

Page 18: 普通のRailsエンジニアが【intelliJ】やってみた。

Railsサーバーの起動(3)動いた!

Page 19: 普通のRailsエンジニアが【intelliJ】やってみた。

まとめ

開発は手元開発で便利な機能はIntelliJで

コード補完

静的解析

テスト実行

etc…

実行はサーバーで既に動いている実行環境がそのまま使える