railsを扱う時に必要になるcloud9の設定

cloud9をたまに扱うことがあるのですが、扱い方を忘れることが多々あるので、メモしておきます。

webサーバーの起動

単純にターミナルでやる場合は、rails sで大丈夫なのですが、cloud9の場合は、下のようにします。

rails s -b $IP -p $PORT

データベースの起動

sudo service postgresql start

Cloud9は一定期間アクセスがないとDBMSを自動停止しますから、sudo service postgresql startでデータベースを起動させましょう。

例えば、cloud9に下のようなエラーが出た場合、データベースを起動させてあげるとなおります。

PG::ConnectionBad: could not connect to server: Connection refused
         Is the server running locally and accepting
         connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5532"?

PostgreSQLにフル権限ユーザとして接続する

sudo sudo -u postgres psql

コマンド実行後に、postgres=#と表示されれば大丈夫です。

PostgreSQLにOSにユーザーが登録されていなかった場合

CREATE USER ubuntu SUPERUSER;

これでユーザー登録ができます。たいていERROR: role “ubuntu” already existsと表示されることが多いですが、ユーザーが登録されていなかった時はこれを使います。

おまけ、PostgreSQL実行モードから抜け出す

\q

か、コントロールキー(ctrl)とdを同時押しでも抜け出すことができます。

config/database.ymlファイルの編集

#省略
default: &default
  adapter: postgresql
  encoding: unicode
  # For details on connection pooling, see rails configuration guide
  # http://guides.rubyonrails.org/configuring.html#database-pooling
  pool: 5
  template: template0

development:
#省略

template0と指定することで、独自のエンコーディング設定を行うことができます。

以上が、cloud9でrailsを扱うときに必要になる。設定です。

See Also