0
0

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 1 year has passed since last update.

【IBM Cloud】Code Engineをいろいろいじってみた② - Dockerfileでのデプロイ

Last updated at Posted at 2022-10-05

はじめに

*** Code Engine操作に関する前回記事の続きとなりますので、先にご確認いただけるとよりスムーズかと思います。
【IBM Cloud】Code Engineをいろいろいじってみた① - プロジェクト、アプリケーションの作成

IBM CloudのCode Engineを使っていろいろ試してみた内容をまとめました。Code Engineについての自分の勉強のために操作してみたため、同じくこれからCode Engineを活用される方向けとなる基礎内容の記事です。
今回の内容にはIBM Cloudのアカウント(無料利用可能)が前提となっています。

Code Engineの概要

IBM Cloud® Code Engine (略称「Code Engine」) は、ソース中心の最新のコンテナー化サーバーレス・アプリおよびジョブを作成できるようにすることを目的として、IBMによって開発されたプラットフォームです。コードを実行したい開発者のニーズに対応するように設計されており、アプリケーションのコードを分析し、コンテナイメージの作成とデプロイを自動的に行います。
現在、日本国内では東京リージョンと大阪リージョンともに対応しています。
スクリーンショット 2022-09-13 15.28.08.png

Code Engineの主な特徴

Code Engineの主な特徴としては、以下のようになります。

  • インフラ管理・クラスタ管理が不要

    • アプリのソースコードを瞬時にデプロイ
    • ソースコードをもとに自動ビルド・デプロイ
  • 複数のワークロードに対応

    • アプリケーション(HTTPベースのアプリ)
    • バッチジョブ
    • ファンクション(イベント駆動)
    • コンテナ
  • 柔軟なスケール(ゼロ・スケール)

    • インフラ管理なしにアプリを柔軟にスケール可能
    • アプリが利用されていない場合はゼロ台にスケールダウンすることが可能
  • 真の意味での従量課金

    • アプリ、ビルドで利用したリソース量に対する支払い
    • ゼロ・スケールに対応しているため、真の意味でアプリが利用されているときだけのお支払い

Code Engineのデプロイ方法について

Code Engineを使ってデプロイする方法は3つがあります。
① アプリコードを用いてビルド+デプロイする
② Docker Fileを用いてビルド+デプロイする
③ コンテナイメージを用いてデプロイする
今回は、②のコンテナイメージを使ってデプロイしてみました。

デプロイの流れ

前回はCode Engineでコンテナ・イメージを使ってデプロイし、デプロイ結果や詳細機能などを確認しました。
今回はDockerfileを用いてビルド+デプロイする流れを整理します。

前回作成したプロジェクトを開き、新しいアプリケーションを立ち上げます。右上の作成ボタンをクリックします。
(ちなみに前回コンテナ・イメージを使って作成したアプリケーション「application-e1」もありますね。)
スクリーンショット 2022-10-05 15.42.35.png

アプリケーションの作成画面で必要情報を入力します。今後の見分けのために、今回のデプロイからは私も名前をしっかりつけるようにしました。
Dockerfileを用いたデプロイであるため、test-using-dockerfileと設定しています。
実行するコードの選択は今回はDockerfileを使うため、ソース・コードを選択します。(前回はコンテナー・イメージを選択しています。)
サンプルで用意されているGithubからのソースコードURLを入力します。

その後ビルドの詳細を設定するため、ビルド詳細の指定をクリックします。
スクリーンショット 2022-10-05 15.46.47.png

ビルドの詳細画面ではソース/戦略/出力についての設定画面が表示されます。
ソース欄ではデフォルトで設定。
スクリーンショット 2022-10-05 15.47.06.png
戦略欄ではビルド用のリソースのみに変更。
スクリーンショット 2022-10-05 15.47.18.png
出力画面では名前空間リポジトリー(イメージ名)のみ変更。(名前空間にそのまま入力すると、自動に登録され、リポジトリーも設定されます。)
スクリーンショット 2022-10-05 15.47.47.png
これでビルド詳細の指定は完了です。

下段にスクロールするとエンドポイントの設定やランタイム設定がありますが、今回はインスタンスリソースのみ最も小さいスペックに変更しています。(0.125個のvCPU/0.25GB)
スクリーンショット 2022-10-05 15.48.20.png
スクリーンショット 2022-10-05 15.49.05.png
また、選択オプションで環境変数とコマンドのオーバーライド設定欄がありますが、今回は何も設定していません。

これで全ての設定が完了しました。右下の作成ボタンをクリックします。
スクリーンショット 2022-10-05 16.06.09.png

画面が切り替わってデプロイ中の画面が自動に表示されます。まもなくデプロイが完了し準備ができたとの表示が見えます。
(例) デプロイ中→対応可能待機中→対応可能実行中→成功
スクリーンショット 2022-10-05 16.07.37.png
スクリーンショット 2022-10-05 16.09.28.png

デプロイが完了しましたらアプリケーションの画面を確認します。無事新しいアプリケーションがされていますね。
URLを開いて実際の画面を確認すると、Sampleが表示されることがわかります。
スクリーンショット 2022-10-05 16.10.55.png
スクリーンショット 2022-10-05 16.11.08.png

最後に

今回はDockerfileを用いてコンテナ・イメージをビルドし、アプリケーションをデプロイする流れを整理しました。
最初からコンテナイメージを用いてデプロイする方法に比べると多少操作が発生しますが、それでも非常に簡単にデプロイできます。
次回は残りのデプロイ方法である「① アプリコードを用いてビルド+デプロイする」方法についてまとめていきたいと思います。

参考

・IBM Cloud Docs - Code Engine でのアプリの操作

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?