1. はじめに
Arukas CLIクイックスタートガイド(Ruby) では、シンプルな「Hello world」を出力するRubyのサンプルアプリケーション ( Sinatra framework ベース)をArukas上にて立ち上げていきます。
このハンズオンを通して、ArukasでのCLIを用いたワーク・フローを一通り理解することを目的としています。
事前に必要なもの:
- Arukas アカウント
- Docker 環境 – OS X, Windows and Linuxのインストールガイド
2. Arukasへアプリケーションをデプロイ
現在2つの方法でアプリをデプロイすることが可能です。
今回は、Arukas CLI Tool を使ったクイックスタートガイドとなります。
なお、User Control Panel を使った方法はこちらを参考にしてください。
2.1. Arukas CLI Toolを使ってRubyアプリケーションをデプロイ
ステップ1 – APIキーの取得
Arukas CLI Tool を利用したデプロイは、APIキーによる認証を行う必要があります。
Arukasアカウント作成後、User Control Panel にて、APIキーの発行を行います。
これより下記のキーが作成されます。
API_TOKEN
SECRET_KEY
ステップ2 – Rubyアプリケーションをデプロイ
それでは、Rubyのアプリケーションをデプロイする準備が整いました。
今回のクイックスタートガイドでは、 dockerlized CLI を利用し、ローカルのDocker環境を前提に進めていきます。
$ docker run --rm \
-e ARUKAS_JSON_API_TOKEN="<API_TOKEN>" \
-e ARUKAS_JSON_API_SECRET="<SECRET_KEY>" \
arukasio/arukas run \
--instances=1 \
--mem=512 \
--app-name="quickstart-ruby" \
--ports=4567:tcp \
arukasio/quickstart-ruby
パラメータ:
- instances: インスタンス数
- mem: メモリーサイズ
- app-name: アプリ名
- ports: ポート番号
ステップ3 – Arukasでのアプリ実行状態の表示
先ほどデプロイをしたアプリの実行状態を確認してみましょう。
$ docker run --rm \
-e ARUKAS_JSON_API_TOKEN="<API_TOKEN>" \
-e ARUKAS_JSON_API_SECRET="<SECRET_KEY>" \
arukasio/arukas ps
アプリごとに以下の情報が出力されます。
- CONTAINER ID: コンテナID
- IMAGE: イメージ名
- COMMAND: アプリ起動時のコマンド
- CREATED: 作成日時
- STATUS: アプリの状態
- NAME: コンテナ名
- ENDPOINT : エンドポイントのドメイン名
Ex.
CONTAINER ID IMAGE COMMAND CREATED STATUS NAME ENDPOINT
0df30faa-ba63-49f5-a50f-efb27f899d26 arukasio/quickstart-ruby 2016-05-20T10:31:17.897+09:00 running drunk-shaw-8524 drunk-shaw-8524.arukascloud.io
ステップ4 – エンドポイントへのアクセス
それでは、エンドポイントへリクエストを行いましょう。
$ curl https://<ENDPOINT>
「Hello World!」と返却されるはずです。
またその他主要コマンドとして、以下が挙げられます。
start [OPTIONS] IMAGE
stop [OPTIONS] IMAGE
rm [OPTIONS] IMAGE
これらの詳細は下記よりご参照ください。
$ docker run --rm \
-e ARUKAS_JSON_API_TOKEN="<API_TOKEN>" \
-e ARUKAS_JSON_API_SECRET="<SECRET_KEY>" \
arukasio/arukas help
3. 最後に
ここまでで、Arukas上にてRubyのアプリのデプロイをすることができました。
Dockerイメージをお持ちでしたら今回と同じ要領でデプロイをすることができます。
なお、今回のRuby以外にも、DockerイメージがDocker Hubにて利用が可能です。
Dockerに関して、更に詳しい情報はこちらになります。また、今回のクイックスタートガイドで用いられたスクリプトは以下のGithubページからダウンロード可能です。