Ruby on Rails 3.2 をDotCloudに導入しよう MySQL編 (1) | IT悶々日記

IT悶々日記

IT業界で悶々と奮闘するコンサルタント兼エンジニアの日記

前回は、RailsのバニラアプリをDotCloudにデプロイするところまでをやりました。
次はMySQLをつかったアプリケーションをDotCloudにデプロイすることにチャンレンジしましょう。
そのための手順として、3つのことを行う必要があります。

1. DotCloudにMySQLサーバを稼働させます
2. MySQLとデータフェッチ/ストアを行うアプリを作成
3. DotCloudにアプリをデプロイして動作確認

まずは1から始めましょう。
dotcloud.ymlにdbサービスを追加し、タイプにMySQLを指定します。

#vi dotcloud.yml
<dotcloud.yml>
www:
type: ruby
approot: kazokuapp
db:
type: mysql


あとは、、、DotCloudにプッシュするだけです!!

#dotcloud push kazoku
...
14:02:13 ---> Initializing new services... (This may take a few minutes)
14:02:13 [db.0] Initializing...
14:02:25 [db.0] Service initialized
14:02:25 ---> All services have been initialized. Deploying code...
...
14:02:47 ---> Deploy finished


本当にこれだけでMySQLサービスが稼働し始めました。
デプロイのメッセージで、db.0としてMySQLサービスが初期化されているのがわかります。
簡単すぐるDotCloud。恐るべし。。。

それでは早速、MySQLにつないでみましょう。
sshでkazoku.dbサービスに接続した上でmysqlコマンドで接続します。
が、その前にまずはMySQLのrootのパスワードを確認します。

# dotcloud info kazoku.db
config:
mysql_masterslave: true
mysql_password: xxxxxxxxxxxxx <----これがパスワードです
created_at: xxxxxxx
datacenter: Amazon-us-east-1d
...

Amazonの東海岸のデータセンターに格納されているようです。
(wwwサービスはインスタンスは別なんでしょうか。。。)
パスワードをメモったらMySQLに接続しましょう。

# dotcloud ssh kazoku.db <---sshで接続
# $SHELL
mysql@kazoku-default-db-0:~$ mysql -uroot -pxxxxxxxxx <---mysqlコマンドで接続
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 34
Server version: 5.1.41-3ubuntu12.10-log (Ubuntu)
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

おおお、接続できました!!!
Ubuntu OS上のMySQL 5.1ですね。
my.cnfなどの設定は後回しにして、まずはMySQLの稼働が完了です。


次はMySQLを使ったRailsアプリの作成に進みましょう。

(続く)