52
51

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Arukas.io CLI、まだ β なのに便利だった

Last updated at Posted at 2016-04-27

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 にあったバイナリを落としてきて

install-with-binary
cat << EOF >> .env
ARUKAS_JSON_API_TOKEN=<api-token>
ARUKAS_JSON_API_SECRET=<api-secret>
EOF

で OK です。

方法 2. Go 環境があるなら

install-with-golang
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 環境があるなら

install-with-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)

52
51
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
52
51

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?