
今年の初めくらいから個人的な技術検証にはSSDで動作が速く、1時間1円で料金が安いのとロケーションをSan Franciscoにするとsshでもレスポンスが悪くないので、全部Digital Oceanを使っている。(徳丸先生が紹介する前から使っていたんだ!)
Digital OceanについてはRebuild: 2: Rails, Redis, VPS (Kenn Ejima)の42分くらいから言及されてます。必聴です。
使ってる旧型のMacBookAirみたいな貧弱なマシンだとローカルでVM動かすとファン回りまくりとかで泣きたくなるので、Digital Oceanだと泣かずに済んで快適。
そんで今日Vagrant経由でDigital Ocean利用すると、コマンドラインから必要なときに新規インスタンス(Droplet)作って、検証終わったら削除という手軽な使い捨て高速サーバ環境が利用出来て検証に大変便利ということを知った。(APIの存在は知っていましたが、情弱なのでブラウザから毎回ポチポチやってました…)
client_idとapi_keyを取得するssh keyを登録client_idとapi_keyを取得しておくここ経由で申し込んで頂けると私の懐が潤います!
2013年12月05日現在の1時間あたりの料金プランは下記のような感じ

Vagrantからファイルをダウンロードしてインストール。2013/12/05現在最新の1.3.5を利用してます。
vagrantコマンドでvagrant-digitaloceanをインストール。vagrant-digitaloceanは2013/12/05現在最新の0.4.1を利用
1 | |
apiを叩くのに必要なので、brewで導入
1 | |
私は下記のようにディレクトリを掘って、Vagrantfileを用意
123 | |
2013年12月9日 追記
申込みが増えているのかサンフランシスコで最小プラン(メモリ512MB)がずっと売り切れの状態なので、provider.size = '1GB'にするか、provider.region = 'New York 2'など別ロケーションを選択するなどの必要があります。1GBプランだと1時間約2円(0.015ドル)です。
私が使ってるファイルの中身は下記のような感じ。設定したssh keyの名前や、APIページで取得したclient_idとapi_keyはここで設定。repoにepelを追加して、起動時に最低限必要なパッケージを入れるためにpuppetを走らせてます。
2014年7月18日 追記
DigitalOceanのAPIがv2.0になりhttps://cloud.digitalocean.com/settings/applicationsでtokenの生成が必要になりました.下記の例だとprovider.token = 'xxxxxxxxxxxxxxxxxxxxx'といった形でtokenを設定する必要があります.またregionの指定方法もSan Francisco 1からsfo1という感じで変更になっています.
123456789101112131415161718192021222324 | |
manifests/default.ppは下記のような感じ。
1234567891011121314151617181920212223242526 | |
vagrant upコマンドを利用して、インスタンスを作成。ドンッ!
1 | |
すると下記のように数分でインスタンスが作成される。
1234567 | |
San Francisco 1だと時間帯によって結構時間かかるので、早めに検証したい場合はNew York 2とかに変更すると良いかも。
私はpuppet走らせるので、--provisionを付けてインスタンス作成してます。
1 | |
vagrant sshでssh接続するとIPを覚えておく必要がない。
1 | |
Digital Oceanは停止状態(halt)だと課金されるので、使い終わったら、インスタンスをdestroyで消す。
1 | |
なんて便利な時代なんだ!手元のMacBook Airも熱くない!!

Akira Maeda
@glidenote
このブログは個人的なものです。ここで述べられている内容は私の個人的な意見に基づくものであり、私の雇用者に一切の関係はありません