rvmで複数のrubyバージョンを管理する
rvmで複数のrubyバージョンを管理します。OSはCentOSです。
1.rvmのインストール
rvmをインストールして、コマンドをPATHに通します。
cd ~ curl -s https://rvm.beginrescueend.com/install/rvm > rvm-install.sh chmod +x rvm-install.sh ./rvm-install.sh echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" #load rvm function ' >> ~/.bash_profile . ~/.bash_profile
2.Rubyのインストール
ここでは、rubyの1.9.2をインストールします。
rvm install 1.9.2
3.Rubyの選択
rvm use 1.9.2
以下のコマンドでRubyのバージョンを確認します。
ruby -v
これで、1.9.2のRubyを使うことができます。1.8.7をつかう場合は、2.と3.の手順で1.8.7を指定してください。
Ruby On Rails メモ bundle installコマンドでmysql2のインストールが失敗する場合の対処法
Ruby On Rails のbundler installでmysql2のインストールに失敗する場合には、以下のコマンドを実行して
からインストールすると対応できる場合があります。
bundle config build.mysql --with-mysql-config=/usr/local/mysql/bin/mysql_config
おそらく、mysql2ではネイティブのMySQLクライアントを使うために、mysql_confingを参照している
と思われます。
Rails勉強会 2011/9/17(土) まとめ
1.Rails開発に出てくる単語のまとめ
(1)RSpecとは?
・TestUnitとは書き方が違う。
・TestUnitはassertを使う。RSpecはDSLでテストよりの領域をカバーする。
・RSpecのテストコードはこうなるべきという意味を示す。
・Railsの開発者はRSpecでテストをすることが多い。
【参考URL】テストを短く書くためには
http://d.hatena.ne.jp/t-wada/20100228/p1
【参考URL】マッチャーとは?
https://www.relishapp.com/rspec/rspec-rails
(2)Cucumberとは?
・自然記述で書く。
・インテグレーションテスト。
・日本語でシナリオを書く。
(操作の一連の流れを書く)
【参考URL】達人出版会(日本語では一番詳しい情報が書いてある)
http://tatsu-zine.com/
(3)AutoTestとCIの違い
・変更したソースに対するテストを自動的に実行する。
・Guardを使う。
・prefetch-rspec
・RSpec,TestUnitの起動が遅い。そもそもRailsの起動が遅い。
(4)CI
・テストサーバを立てる。
・Jenkinsがよく話題に出てくる。
・バージョン管理ソフトが関連する。hookで実行したりする。
・人件費が高くなっていて、コンピュータでテストを自動化すればいいという発送。
(5)BigTuna
機能が小さい。独自の拡張もしている。現在はJenkinsへ移行している場合が多い。
(6)Travis CI
・githubと連携する。
・メモリを多く使う。
(7)Heroku Dyno
WEB Dyno
Worker Dyno
1台ずつぐらいなら無料で動かせる。
(8)Bundle
・gemの管理ツール
・vendor配下にインストールする場合はbundleコマンドのオプションを使う。
(9)Chef
サーバの環境構築ツール
(10)EventMachine
http://keijinsonyaban.blogspot.com/2010/12/eventmachine.html
(11)初心者におすすめの勉強法・本は?
・Rails 3レシピブック
・Rails Tutorialをひと通りやって見る
・Rails Guide は必要なところをかいつまんで勉強する。
(12)管理画面の自動生成
rails-adminがデファクトスタンダード。
(13)SCSS
・CSSを書きやすくしたもの。
(14)Git
・db/schemaをコミットするか? → しないことが多い。
・Gemfile.lockをコミットするか? → することが多い。
・gitignoreを使って除外するものを指定する。
https://github.com/github/gitignore/blob/master/Rails.gitignore
(15)jpmobile
・モバイルサイトを使うなら必須
(16)入力補完(rails.vim)
・補完はあまり使われない。→補完するより入力したほうが早い。
・長いソースコードはコピーしてくる。
2.ソースコードリーディング
Railsの構造を知るために良い本。
http://pragprog.com/book/jvrails/crafting-rails-applications
CentOSにGitをソースからビルドしてインストールする。
Ruby On Railsの勉強を始めました。
Linux上にRubyとRailsをインストールして開発する予定です。まずは、バージョン管理用のGitをインストールします。バージョン管理システムとしては、Subversionも候補にあがりますが、ここではGitにトライしました。今回、Gitを選択した理由としては、GitがSubversionより高速であることや、Gitの仕組みを前々から理解したいと思っていたためです。
1.前提条件
OS:CentOS 5.5(64bit)
gccなどはインストール済みです。
2.gitのインストール
ソースを/usr/local/srcに配置して解凍します。
/usr/local/src/git-1.7.4.1.tar.bz2 cd /usr/local/src tar -jxvf git-1.7.4.1.tar.bz2 cd git-1.7.4.1
インストールします。
./configure --prefix=/usr/local make intall
Gitのインストールはこれだけです。次にmanpageをインストールします。
/usr/local/src/git-manpages-1.7.4.tar.gz cd /usr/local/src tar -zvxf git-manpages-1.7.4.tar.gz
解凍すると、man1、man5、man7が作成されます。
これを/usr/local/manにコピーします。
cp -r man1/ /usr/local/share/man/ cp -r man5/ /usr/local/share/man/ cp -r man7/ /usr/local/share/man/
以下のコマンドを実行して、問題がなければインストール成功です。
git --version
man git
作業は以上です。
MySQL 5.5.8でリモート接続に失敗した場合の対処法
以下のエラーがでた場合の対処法です。原因はMySQLサーバが名前解決出来ていないためです。
ERROR 1042 (HY000): Can't get hostname for your address
/etc/hostsに追加するか、DNSを設定すれば解決すると思われますが、ローカルでちょっと開発していたりすると設定が少し面倒です。なので、MySQLの設定を変更して対応してしまいましょう。
/etc/my.cnfを編集します。
[mysqld] ... skip-name-resolve ←一行追加 ...
MySQLを再起動します。
service mysql restart
リモートから以下のコマンドで接続して確認します。
mysql -u ユーザ名 -h ホストのIPアドレス -p
手順は以上です。
MySQL 5.5.8をcmakeでインストールする
1.前提
OS : CentOS 5.5 x86_64
MySQL : 5.5.8
作業は基本的にrootユーザで実行します。
2.ユーザの追加
groupadd mysql useradd -g mysql mysql
3.ディレクトリの作成
MySQLをインストールするディレクトリを作成します。
mkdir /usr/local/mysql_5.5.8
4.インストール
/usr/local/src/にmysql-5.5.8.tar.gzを配置します。
ここでは、インターネットからダウンロードして、FTPなどで既に配置してあるものとします。
cd /usr/local/src/ tar -zxvf mysql-5.5.8.tar.gz cd mysql-5.5.8
MySQL 5.5.8ではcmakeによるインストールが推奨されています。なので、cmakeを使います。
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql_5.5.8/ make make install
他にもオプションが指定できそうですが、詳細はまだ理解できていません。
次にディレクトリの所有権を変更します。
chown -R mysql:mysql /usr/local/mysql_5.5.8
データベースを初期化します。
cd /usr/local/mysql_5.5.8/ ./scripts/mysql_install_db --user=mysql
rootユーザで自動起動も設定しておきます。
cd /usr/local/src/mysql-5.5.8/ cp support-files/mysql.server /etc/init.d/mysql chmod +x /etc/init.d/mysql chkconfig --add mysql
以下のコマンドを実行して状態を確認します。期待したランレベルでonになっていれば問題はありません。
chkconfig --list
実行環境に合わせて、起動スクリプトを変更します。
vi /etc/init.d/mysql basedir=/usr/local/mysql_5.5.8
設定ファイルをコピーします。設定ファイルは必要に応じて編集してください。
cd /usr/local/src/mysql-5.5.8/ cp support-files/my-medium.cnf /etc/my.cnf
インストールは以上です。serviceコマンドで起動しましょう。
service mysql start
以下のコマンドでログイン出来れば、インストール成功です。
/user/local/mysql_5.5.8/bin/mysql -u root
今後はcmake時のオプションや、InnoDBの理解を深めていきたいです。