投稿日2015/01/24
Railsの設置について説明していきます。設置して各設定を行います。環境構築を何回かに分けて明記しています。OSはCentOSです。
VPSにログインしていない時はログインしてください。
ssh yourname@契約したIPアドレス
Railsアプリーケーショ用のユーザ作成
sudo useradd -m appname
passwordを作成
su
passwd appname
gpasswd -a appname wheel
su appname
パーミッションを変更します。
sudo chmod 750 /home/appname
.sshとauthorized_keysの確認
sudo ls -d ~appname/.ssh
sudo ls ~appname/.ssh
SSH公開鍵を追加
sudo sh -c "cat ~yourname/.ssh/authorized_keys >> ~appname/.ssh/authorized_keys"
sudo visudo
下記を探します。
Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin
修正します。
Defaults secure_path = /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/rbenv/shims
別のターミナルを開き、アプリケーションユーザとしてログインします。
ssh appname@契約したIPアドレス
GithubからClone
git clone git://github.com/yourId/xxx.gin rails_root
RMagickを使用している場合
sudo yum install ImageMagick-devel ImageMagick-c++-devel
Gemfile群をbundle install
cd ~/rails_root
bundle install --path vendor/bundle --without development test
下記で作成されたパスワードをコピーしておきます。
pwgen 12 1
rootでMySQLモニターにログイン
mysql -u root -p
下記、コマンドを実行
mysql> CREATE DATABASE appname_production DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
mysql> CREATE USER 'appname'@'localhost' IDENTIFIED BY '先ほど作成したパスワード';
mysql> GRANT ALL ON appname_production.* TO 'appname'@'localhost';
mysql> quit
vi config/database.yml
以下のように書き換えます。
production:
adapter: mysql2
encoding: utf8
reconnect: false
database: appname_production
pool: 5
username: appname
password: 先ほど作成したパスワード
socket: /var/lib/mysql/mysql.sock
cd ~/rails_root
RAILS_ENV=production bundle exec rake db:setup
Deviceを使用しているとエラーが出ます。エラー時に作成されたconfig.secret_key='シークレットキー'をconfig/initializers/device.rbに追記しましょう。
bundle exec rake assets:precompile RAILS_ENV=production
エラーになる時はGemfileを編集し、
# gem 'therubyracer', platforms: :ruby, group: :production
ここのコメント外してbundle installしましょう。
public/assets以下にCSS、JavaScript、画像が作成されます。
ls -l public/assets