Railsで使えるGem

Rails3.2のアプリをデプロイ~apache+passenger+postgresql

投稿日:

 

環境

ubuntu server 12.04

postgresql

インストール

参照

Ubuntu server12.04にPostgreSQLをインストールする

 

 

設定

postgresユーザーになる

psqlシェルにログイン

自分に権限を与える

loginとsuperuserの権限が必要

psqlシェルをログアウト、postgresユーザーもログアウト

ダミー用に自分の名前のデータベースを作成(psqlコマンドは指定しないと自分と同名のデータベースを探すため)

psqlでログイン出来ればOK

 

Gemfile

参照

Rails3.2.8でPostgreSQLを使う(開発環境)〜pg gem

こっちはピーキュー

こっちはピージー

bundle

database.yml

 

データベースの準備

 

apache+passenger

apacheインストール

 

passengerインストール

 

apache用モジュール

たぶんいろいろ足りないと言われるので言われるとおりにapt-getでライブラリやソフトをインストールする

インストールが終わったら、①モジュールのロードと②ホストの設定をするので、表示された文例を控えておくこと!

apache2の設定

ubuntuでは/etc/apache2に設定用のファイルがある

モジュールの設定は/etc/apache2/mods-availableにファイルを作成して、/etc/apache2/sites-enable/にシンボリックリンクを作成する

/etc/apache2/mods-available/passenger.loadを作成して

さきほどの3行を貼り付ける

そして、シンボリックリンクを作成

サイトの設定は/etc/apache2/sites-available/にファイルを作成して、/etc/apache2/sites-enable/にシンボリックリンクを作成する

/etc/apache2/sites-available/mysiteを作成して

さきほどの設定を貼りつけた上で、自分のサイト用に修正する

Order~とAllow~の設定が追加してあるのは、なんかつけないとうまく動かないっていう情報がStackOverflowにあったのと、アジャイル開発の本の例がこうなっていたから.Allow from allがないとどういう不都合が生じるのかはよくわかっていない.

シンボリックリンクを作成して

apache2を再起動

 

デプロイ準備

なにはともあれサイトにアクセスしてみるとテーブルがないエラーが出ると思う

database.ymlをみるとわかるけどdevelopment環境とproduction環境では違うデータベースにアクセスしているから、こちらでもあらためて設定し直す必要がある

場合によっては

また、production環境ではデフォルトでアセットパイプラインという仕組みを使って、cssファイルやjsファイルをあらかじめまとめておいて通信を節約する

この仕組みもエラーがたくさん出てよくつまずくところだけれど

サイトにアクセスしてうまく表示されれば一安心

 

ハートの画像素材は、ここのものを利用しました

あとはログローテートなども必要に応じて設定したりすること

-Railsで使えるGem
-,

執筆者:

関連記事

no image

Rails3.2でOpenDocumentText(.odt)を作成~serenity

  これも途中経過デス   odtはOpenOffice.orgのwriterなんかの保存形式 serenityはerbライクなodtテンプレートから変数を利用して文書を作成してく …

WindowsのRubyでxlsxファイルにアクセスする~roo

By: Hajime NAKANO – CC BY 2.0 目次1 rooのインストール2 rooを使ってみる(基本)3 シートを指定する4 セルの値を確認する5 行列を数える rooのイ …

Ruby on Rails 3.2でファイルアップロード〜CarrierWave & RMagick

By: Damian Gadal – CC BY 2.0 目次1 最初に2 Gemfile & bundle3 generate rb ファイル4 Modelに”ima …

Rails3.2でTwitterBootstrap導入のあれこれ

  目次1 sass-rails-bootstrap導入2 Layout関係3 Notification4 confirmをmodalにする5 SimpleForm導入6 kaminari導 …

多対多の関係でまだ関連を持っていない候補を探す〜active_record、pluck、not in

By: Kevin Dooley – CC BY 2.0 目次1 前提2 やりたいこと3 解4 解説 前提 PersonとProjectは、ProjectsPersonという中間モデル(テ …