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.8でPostgreSQLを使う(開発環境)〜pg gem

環境 Ubuntu server12.04にPostgreSQLをインストールする 参考 #342 Migrating to PostgreSQL @railscasts 目次1 準備2 データベース …

状況に応じてRailsのフォームの種類を変える

By: Heidi De Vries – CC BY 2.0 目次1 前提2 仕様の決定3 正規表現の変更4 メタプログラミング第一歩5 helper6 view7 できた8 できてない9 …

ActionCableのサンプルをみてみた

By: Samantha Brough – CC BY 2.0 目次1 ActionCableとは2 rails4での利用3 redisサーバーの準備4 cableサーバーの準備5 チャッ …

Rails3.2とBackbone.jsでサーバーサイドのフィルタリング

By: Haldane Martin – CC BY 2.0   テーブルに表示されているデータをサーチバーに入力した語で絞り込みたい こういうテーブルフィルタリングを実現する仕 …

no image

Private_pubでのJSON通信の方法

  前回 Rails3.2でBackbone.jsとPrivate_pubでToDoアプリをリアルタイム化(できた!)   Gemfileへの追加とbundleの実行 privat …