IBM Cloud で無料のKubernetesを活用してアプリ(Node.JS)を公開する
IBM Cloud のアカウント取得
IBM Cloudのアカウントを所持されてない場合は、こちらの記事を参考にアカウントを作成してください。
所要時間数分で、メールアドレス一つで、どなたでも簡単に登録することができます。
『「IBM Cloudをはじめました」無料ではじめられるライト・アカウント登録方法』
Kuernetes Serviceの作成
リソースの作成
IBM Cloudのログイン画面後のダッシュボード画面で、右上のリソース作成を選択します。
Kuernetes Serviceの選択
リソースの「カタログ検索....」に「kubernetes」を入力します。
検索結果の一覧から「Kuberenetes Service」を選択します。
無料プランの選択
クラスタの作成
クラスター名やリソースグループを確認し右下の「作成」ボタンを押します。
(クラスター名の変更や、リソースグループの変更は任意で行ってください。)
Kuberenetes Serviceがプロビジョニングされるまで少し時間を要します。
Container Registoryの作成
レジストリーの画面へ遷移
名前空間(Namespace)の作成
ロケーションを確認し、「名前空間」のタブを選択してください。
(ロケーションの変更は任意で行ってください。)
Kubernetes Serviceの続き
クラスターの画面に遷移
クラスターの作成完了
レコードを選択すると、Kubernetes Serivceのクラスター画面に戻ります。
これで、Kubernetesが無料で使えるようになりました。
クラスターへのアクセス
クラスターのアクセス情報
赤枠の情報にしたがってクラスターにアクセスすることが可能です。
情報がよく分からなくてもご安心ください。
ツールチェーンの作成により、この情報を意識せずにビルドやデプロイの自動化が可能です。
イメージはJenkinsと似ています。
ツールチェーンの作成
ツールチェーンの有効化
テンプレートの選択
様々なテンプレートが用意されていますが、「Kubernetes アプリの開発」テンプレートを選択します。
自分で、詳細に設定したい場合は「Build your onwツールチェーン」で細かく指定することも可能です。
リージョンとGitリポジトリの設定
リージョンと、Gitリポジトリーの情報を設定します。
「このリポジトリーをプライベート・リポジトリーにする」を選択すると非公開のリポジトリーが作成されます。
(任意でGitリポジトリーの方法を変更することも可能です。)
設定が終わったら、「作成」ボタンを押します。
Key Protectの設定
IBM Cloud APIキーの「作成」ボタンを選択します。
Key Protectの作成
キー情報を設定し、「OK」ボタンを選択します。
(再使用のために秘密ストアに保持、サービス名を設定しました。)
Delivery Pipelineの設定
IBM Cloud APIキーの項目が自動的に設定されます。
Container Registryの情報に、上記で作成したレジストリーのリージョンと名前空間を設定します。
クラスターの情報も自動的に設定されます。
設定が終わったら、「作成」ボタンを選択します。
サンプルアプリ(Node.JS)をKubernetesにデプロイ
ツールチェーンから「Delivery Pipeline」を選択します。
ビルドから、Container Imageの作成、KubernetesのDeployがすべて自動で進んでいきます。
Kubernetes Serviceのアプリにアクセス
すべて成功したら、Check healthを選択してください。
ログの下の方に「API_URL」が出力されている箇所があるので、URLのリンクを選択します。
サンプルアプリケーションにAPIの追加
サンプルアプリケーションに「/hello」のAPIを追加する手順です。
ツールチェーンに遷移
Deploy結果Check healthのログのタブに戻り、右上の「ツールチェーン」を選択します。
エディターの起動
ツールチェーン一覧から、Orion Web IDEを選択します。
app.jsを開く
hello APIの追加
31行目にAPIをコーディングします。
app.get('/hello',function(req,res){res.send("Hello World.");});
app.jsの保存
左上のメニューから「ファイル」> 「保存」を選択し、編集結果をファイルに保存します。
GitにCommit
変更内容を確認し、コミットメッセージを記入して、右上の「コミット」ボタンを選択します。
masterにPush
赤枠の「プッシュ」を選択し、masterブランチにプッシュします。
ツールチェーンに戻る
Delivery Pipelineの選択
構成一覧から、「Delivery Pipeline」を選択します。
反映の確認
先ほどと同様に、ビルド・イメージ作成・デプロイの作成が自動的に実行されます。
すべて成功したら、「Check health」を選択します。
API_URLのリンクを選択します。
アプリの表示を確認します。
APIの確認
URLに「/hello」を入力して追加したhello APIにアクセスします。
次のステップ
hello APIの修正手順と同様にWEB IDEで開発を続けていくことも可能ですが、
使い慣れた方法で、GitにPushしていくことも可能です。
Gitリポジトリーにアクセス
ツールチェーンより Gitを選択します。
右側のCloneからソースをCloneすることが可能です。
ソースをmasterにPushすると、Delivery Pipeが自動で回ってKubernetesにデプロイされます。
その他
途中で、ブラウザを閉じてしまった場合、IBM Cloudにログイン後ダッシュボードからアクセス可能です。