Arukas.io が ステルス β
から β
になったと聞いて。
(2016/05/02 追記:本家があれこれ更新されたので本文修正しました)
CLI もあるというので、早速 GitHub リポジトリ 見に行ったら開発環境は docker-compose ではなく Vagrant でしたし、CircleCI こけてましたが、まあ細かいことを気にしてはいけません。
使ってみたら便利だったのでレポートします。
API キーを発行してもらう
Arukas.io でアカウントを作って、ログインして
https://app.arukas.io/settings/api-keys ここで API キーを作ります。
CLI インストール
2016/04/27 現在、コンパイル済みバイナリは配布されていないようなので
以下 3 パターンのどれかでインストールします。
方法 1. OS に合ったバイナリをもってくる
https://github.com/arukasio/cli/releases
ここから、手元の OS にあったバイナリを落としてきて
cat << EOF >> .env
ARUKAS_JSON_API_TOKEN=<api-token>
ARUKAS_JSON_API_SECRET=<api-secret>
EOF
で OK です。
方法 2. Go 環境があるなら
go get github.com/arukasio/cli/cmd/arukas
cat << EOF >> .env
ARUKAS_JSON_API_TOKEN=<api-token>
ARUKAS_JSON_API_SECRET=<api-secret>
EOF
方法 3. Docker 環境があるなら
alias arukas="docker run --rm -e ARUKAS_JSON_API_TOKEN -e ARUKAS_JSON_API_SECRET arukasio/arukas"
export ARUKAS_JSON_API_TOKEN=<api-token>
export ARUKAS_JSON_API_SECRET=<api-secret>
CLI を使ってみる
run : 新しいアプリケーションの起動
Nginx を起動してみます。
arukas run --instances 1 --mem 512 -p 80:tcp nginx
(instances と mem は必須の引数で、それぞれ起動数と使用メモリ量です、たぶん)
返ってきた結果に ENDPOINT
という列がありますが、これに https://
をつければ、Nginx のハローページが表示されます。なんて簡単に立ち上がるんだ・・便利な世の中だ・・
run : 引数多め版
Arukas.io で Slack 自動招待フォーム のアプリを起動してみます。
arukas run --app-name slack-test --name=slack --instances=1 --mem=512 -p 80:tcp -e SLACK_TEAM_NAME=MYTEAM -e SLACK_TEAM_DOMAIN=domain -e SLACK_TOKEN=token pottava/slack-invite:ja
実はこのままでは起動しません。
引数である name
が世界中でユニークである必要があるためです。name を指定すると、これがサブドメインとなった ENDPOINT
を用意してくれます。Arukas さん素敵です。
それにしても、構文がかなり Docker が意識されていて、慣れている方には優しい作りですね!
ps : 起動中のアプリケーション一覧
arukas ps
いい感じ。
ps -a : すべてのアプリケーション一覧
arukas ps -a
Docker と同じ。いいすね。
start, stop : アプリケーションの起動・停止
arukas start container-id
arukas stop container-id
とても惜しいのですが、ここだけは Docker と違い、ID の短縮系は受け付けてくれません。どうやら Arukas の API エンドポイントが REST API すぎて融通が効かない模様です。はい・・。ここは ps
の結果をコピペせざるを得ない・・
rm : アプリケーションの削除
arukas rm container-id
私まだ試してませんが、たぶんこれで消えるのでしょう。
感想
Arukas.io への要望はたくさんありますが、CLI はいい感じ!
まだドキュメントも何もないけど、ソース読めばわかるしまあよし。余力があったらみんなで PR 投げていい感じに仕上げていきたいですね。
ちなみに、CLI インストール方法 3 の Docker イメージは 私が作った野良イメージ です。Alpine Linux は正義!6MB です。・・とはいえ、公式 CLI のリリースをウォッチしてるわけではないので、バージョンが古くなっていたらすいません。公式でもサポートしてくれるといいなあ
CLI の Docker イメージですが、超速で 公式に対応 されたようなので記事を更新しました。(2016/05/02)