fbpx

Bluemix Cloud Foundry CLIツールを導入してみよう

この記事は1年以上前に投稿されました。情報が古い可能性がありますので、ご注意ください。

前回、デモアプリとしてご紹介したQuestion and Answerアプリを、ドキュメントの手順に則って自身のBluemixアカウントにデプロイしてみます。

Bluemixアカウントをお持ちでない方はBluemixトップページの「無料で開始」ボタンからIBM IDを作成します。IBM IDはBluemixを始めとして、Bluemixへのデプロイ連携にも用いられるDevOps Servicesなど、各種IBMサービス群に対してのシングルサインオンが可能となるIDとなります。

作成したIBM IDでBluemixにログインすると、IBM IDとして登録したメールアドレスが名称となった「組織」のもと、「英国リージョン(地域)」に"dev"という「スペース」が作成された状態でダッシュボードが表示されます。ここで注意したいのが、英国リージョンはもともと米国南部リージョンだけであったBluemixに後から追加されたもので、ドキュメントなどの通常手順は米国南部リージョンのエンドポイントを指定しています。この状態でドキュメントどおりにCLIの操作をすると、米国南部リージョンにログインは出来てもサービスやアプリの作成時に「組織」も「スペース」も存在しないとエラーになってしまいます。APIエンドポイントに英国リージョンを指定して問題なく操作することは可能ですが、先日公開されたコンテナ仮想マシンのサービスを利用できるのも米国南部リージョンですので、ここは米国南部リージョンにスペースを作成することにします。

せっかくなのでスペースの作成もCLIからやります。まずこちらからCloud Foundry CLIツールを導入してください。各種OSの用のインストールバイナリが存在しています。

次にAPIエンドポイントを指定しますが、こちらが米国南部と英国で異なります。

  • 米国南部
    • ng.bluemix.net
  • 英国
    • eu-gb.bluemix.net

まずAPIエンドポイントとして米国南部を指定します。

$ cf api https://api.ng.bluemix.net
Setting api endpoint to https://api.ng.bluemix.net...
OK

API endpoint: https://api.ng.bluemix.net (API version: 2.19.0)
Not logged in. Use 'cf login' to log in.

こちらは後から英国に変更可能ですし、ログインコマンドのオプションで都度指定することも可能です。

作成したIDでログインします。

$ cf login
API endpoint: https://api.ng.bluemix.net

Email> bluemix@creationline.com

Password>
Authenticating...
OK

Targeted org bluemix@creationline.com

API endpoint: https://api.ng.bluemix.net (API version: 2.19.0)
User: bluemix@creationline.com
Org: bluemix@creationline.com
Space: No space targeted, use 'cf target -s SPACE'

組織はデフォルトで1つしか存在しないので、自動でターゲットされます(ユーザーが複数の組織に所属している場合はここで組織選択のプロンプトが出ます)。また、まだスペースが存在しないためターゲットされない旨のメッセージが出ます。

スペース作成の前に、組織名がUserと同じくメールアドレスであり分かりづらいため、ここで名称を変更しておきます。

$ cf rename-org bluemix@creationline.com bluemix-org
Renaming org bluemix@creationline.com to bluemix-org as bluemix@creationline.com...
OK

こちらも後から何度でも変更できます。

今回は"US-South"という名称でスペースを作成します。

$ cf create-space US-South
Creating space US-South in org bluemix-org as bluemix@creationline.com...
OK
Assigning role SpaceManager to user bluemix@creationline.com in org bluemix-org / space US-South as bluemix@creationline.com...
OK
Assigning role SpaceDeveloper to user bluemix@creationline.com in org bluemix-org / space US-South as bluemix@creationline.com...
OK

TIP: Use 'cf target -o bluemix@creationline.com -s US-South' to target new space

ここで作成したスペースに対する権限をユーザに付与しているのが分かります。管理者と開発者が存在しますが、詳細はダッシュボードから組織の管理画面にて確認できます。

作成したスペースをターゲットに指定して準備完了です。

$ cf target -o bluemix-org -s US-South

API endpoint: https://api.eu-gb.bluemix.net (API version: 2.19.0)
User: bluemix@creationline.com
Org: bluemix-org
Space: US-South

今回はここまで。次回はサンプルコードの修正、サービスの登録、アプリのPushから再開します。

新規CTA