Contents


先日「cloudControl」という、PHP の PaaS を見つけました。


http://cloudcontrol.com/
Haorku の PHP 版・みたいな感じのサービスです。

一応 PHPer の端くれ(だと思う)ので、早速登録!
一通り使ってみたので忘れないように覚え書き。
最近物忘れが激しい〜

では、早速。

1, 登録してみる

トップページにある『Sign-up now』からユーザー登録を行います。

↓こんな感じ

【Sign up】ボタンをクリックすると、入力したメールアドレス宛にメールが届きます。

記載されたアドレスにアクセスするとフォームが表示されるので、同じく記載されたアクティブコードを入力して送信します。

これでユーザー登録は完了です。
(完了メールは来ないよ)

2, Bazaar を入れてみる

環境:MacOS X Snow Leopard(10.6)

cloudControl を使うには以下が必要です。

・Python 2.6
・Bazaar もしくは Git

Mac OS X 10.6には標準でPython 2.6の環境がインストールされているので1つ目はクリア。
2つ目のバージョンコントロールシステムはお好みでいいんじゃないかな?

Git は入れてあるし使ったことあるけど、Bazaar って使ったことない。
なのでここは Bazaar にしてみよう。
いろいろ試したいお年頃。

下記サイトに便利なインストーラーがあった。
https://launchpad.net/bzr/+download

画面の指示に従ってインストール。
とりあえず core と ssh&sftp をインストールしておいた。
あっさり終了ですよ。

3, ‘control’ コマンドをインストール

cloudControl では ‘control’ を使用します。
ターミナルからいろいろ操作する訳です。

これもインストール。
Python の easy_install を使う。
このために Python がいるのかな?

ターミナルを起動して、以下のコマンドを実行します。

$ sudo easy_install cctrl
.........
.........
Finished processing dependencies for cctrl

これだけ。

4, SSH key の作成

ターミナルから以下のコマンドを実行

$ ssh-keygen -b 2048

-b オプションは生成する鍵のビット数を指定します。
続く数字がビット数になります。

このあと保存先やパスフレーズを聞かれます。
とりあえずそのまま Enter 。

続いて公開鍵(”id_rsa.pub”)を cloudControl アカウントに追加します。

$ cctrluser key.add ~/.ssh/id_rsa.pub

ここでユーザー登録した際のメールアドレスとパスワードを聞かれるので入力します。

最後に認証エージェントに秘密鍵を追加します。

$ ssh-add
Identity added: /Users/username/.ssh/id_rsa (/Users/username/.ssh/id_rsa)

これで SSH Key の作成は完了です。

5, 使ってみる

まずは cloudControl でアプリケーションを作成します。

$ cctrlapp "APP NAME" create php
Email   :
Password:

メールアドレスとパスワードを聞かれるので入力します。
アプリケーション名には小文字の a-z と数字の 0-9 が使えます。
スペースや大文字は使えないです。
このアプリケーション名が URL(サブドメイン)になります。

続いてローカル環境にリポジトリを作成します。
ようやく Bazaar の出番。

私の場合、ホームディレクトリに Develop というディレクトリを作ってます。
その下にアプリケーション用のディレクトリ(cloudControll/Apps1)を作りました。

このディレクトリ内に index.php を作成

<html>
    <head>
        <title>Hello cloudControl</title>
    </head>
    <body>
        <?php echo 'Hello cloudControl'; ?>
    </body>
</html>

ターミナルでディレクトリを移動し、index.php をリポジトリに加えます。

$ cd ~/Develop/cloudControll/Apps1
$ bzr whoami "Your Name "
$ bzr init
Created a standalone tree (format: 2a)
$ bzr add
adding index.php
$ bzr commit -m "initial commit Hello cloudControl"
Committing to: /Users/username/Develop/cloudControll/Apps1/
added index.php
Committed revision 1.

cloudControl にレポジトリを push します

$ cctrlapp "APP NAME" push
Connected (version 2.0, client Twisted)
Authentication (publickey) successful!
Secsh channel 1 opened.
This transport does not update the working tree of: bzr+ssh://"APP NAME"@cloudcontrolled.com/repository/. See 'bzr help working-trees' for more information.
Created new branch.

最後にデプロイ(展開)します。

$ cctrlapp "APP NAME" deploy

そして確認!
http://”APP NAME”.cloudcontrolled.com/

見れた!

まとめ

やっぱり一番慣れた言語だとやり易いです。
このあと MySQL アドオンつけて phpMyAdmin を入れてみたよ。
明日にでも BLOG 書きます〜

期待してる人がいれば [壁|_-)チラッ

Comments are closed.