トップ «前の日記(2013/12/21 (土) ) 最新 次の日記(2013/12/23 (月) 天皇誕生日)» 編集 RSS feed

HsbtDiary


2013/12/22 (日) [長年日記]

[digitalocean][tugboat] tugboat を使ったワンライナーで vm を作る術

DigitalOcean 使っていますか? SSD な VPS で割と新しめのディストリビューションがガンガン追加されたり、時間単位の課金なので使い捨ての用途に持ってこいだったり、だいたいAPIで操作できるのでプログラマーにフレンドリーな奴です。

vagrant 使って構築するのは同僚の glidenote メンバーが便利エントリを書いているのでそちらを参照してください。

vagrant 便利ですが、provision を使わないような用途では、Vagrantfile を用意せずにワンライナーで構築できたほうが僕は便利なので、tugboat を使って vm を作れるようにしてみました。

ひとまず何はなくてもインストールと API キーの設定から。

$ gem install tugboat
$ tugboat authorize

で、 DigitalOcean のコンパネにある API キーなどをせっせと入れます。あとは

  • tugboat create your-vm でデフォルト設定の VM を作って
  • tugboat ssh your-vm でログインして、がしゃがしゃ作業して
  • tugboat destroy your-vm で削除して終わり

便利。僕は下の設定をデフォルトにしています。~/.tugboat を適当に書き換えて下さい。

defaults:
  region: '1'
  image: '1599371'
  size: '63'
  ssh_key: 'your-key-id'

それぞれの意味は

$ tugboat regions
$ tugboat images --global
$ tugboat sizes
$ tugboat keys

を叩くと詳しく出てきます。

僕の用途だと root でログインして Ruby のビルド環境を作って test-all 流したらさようなら。という感じなのでログインユーザーを root にして ssh_key で root ログインできるようにしています。images ではとりあえず CentOS 6.5 を指定しているけど、images コマンドで確認したら、最初から WordPress や Docker 入りのイメージもこっそりあるので、だいぶ捗りそう。

そんな DigitalOcean ですが、このリンクからアカウントを作ると $10 もらえて 1 ヶ月立ち上げっぱなし、使い捨てで実験するだけなら数百時間くらいは試せるので、皆さんご活用ください。