IBM Cloud News

IBM Cloud Code Engineにソースコードをデプロイする

記事をシェアする:

この投稿は、2021/4/20に米国 IBM Cloud Blog に掲載されたブログ(英語)の抄訳です。

 

コンテナ・レスの世界に少しずつ近づいています

クラウドネイティブアプリケーションのホスティングというと、当然のことながら、実行時のワークロードのデプロイメントと管理に焦点が当てられています。しかし、見落とされがちなのが、ホスティング・プロセスへの入力、つまりソース・コードをデプロイして実行できるものに変換することです。IBM Cloud Code Engineはこれを代行します。

 

IBM Cloud Code Engineとは?

IBMは新しいフラッグシップ・ランタイム・ホスティング環境「IBM Cloud Code Engine」を発表しました(発表内容はこちら)。Code Engineは、フルマネージドのクラウドベースのランタイムで、デプロイ先のインフラを一切管理することなく、あらゆるクラウドネイティブワークロードを数秒でデプロイすることができます。つまり、Kubernetesをインストールして管理する必要はありません。ポッド、レプリカセット、デプロイメント、オートスケーラー、ロードバランサー、さらにはYAMLについても学ぶ必要はありません。

コンテナバッチジョブのCode Engineへのデプロイを紹介したブログやビデオでは、ワークロードをCode Engineにデプロイするのがいかに簡単かをご覧いただきました。しかし、コンテナイメージから始めるには、やはり開発者がソースコードをイメージに変換する必要があります。人によってはそれほど難しいことではないかもしれませんが、他の人にとってはちょっとした学習が必要かもしれません。どちらにしても、開発者がより多くの時間をコーディングに費やせるようにするためには、何かが必要です。

 

コンテナイメージの作成はお任せください

多くの開発者にとって、ソースコードはGitリポジトリに格納されています。Code Engineでは、アプリケーションやバッチジョブのデプロイを開始する際に、そのリポジトリの場所を指定することで、Code Engineがコンテナイメージを作成してくれるようになっています。たぶん多くの方は、疑問をお持になるでしょう。

  • Code Engineはどうやってイメージを構築するのか?
  • Code Engineはどのようにして、自分のコードをコンパイルする方法を知るのか? インタプリタ型言語(例:Python)の場合、ランタイムをバンドルするのではなく、コンパイルする必要があるのか?

もちろん、そこには「ヒント」が必要です。もしあなたのコードがかなり単純なものであれば、”buildpack”と呼ばれるものを利用できるかもしれません。  buildpackとは、コードを分析し、そのコードがどの言語で書かれているかを判断し、それに基づいて、コンテナイメージを作成してCode Engineで「実行可能」にするために必要な手順を踏む仕組みだと考えてください。Javaのようなコンパイル型言語の場合は、コードをコンパイルしてJREと組み合わせます。インタプリタ型言語の場合は、ソースコードを言語ランタイムと一緒にイメージにコピーするだけの簡単な作業です。

しかし、イメージを構築するためにもう少しカスタマイズする必要がある場合は、ソースコードにDockerfileを含めることで可能になります。Dockerfileは基本的に、あなたのコードを実行するコンテナイメージを構築するための指示のリストです。Dockerfileでは、通常、「コンパイル」や「インストール」といった手順で、イメージに含めるべきファイルを指定することができます。その後、プロセスがこれらのステップを実行し、コンテナのスナップショットをイメージとして保存します。

Code Engineがどのプロセスを使用するかは、簡単なフラグで制御することができます。また、コンテナイメージを共有することはよくあることなので、イメージをどこに保存するかを指定することもできます。非常にシンプルですね。

 

 これらのことは何を意味するのか?

これらのことが何を意味するのか、少し考えてみましょう。自分でコンテナイメージをビルドしなくても、「ソースコード」から「実行中のコード」へと移行できるのは素晴らしいことですが、ここにはもっと重要な意味があります。これまでのブログで学んだこと(数回のクリックでアプリをデプロイすることなど)と組み合わせると、開発者はソースコードをクラウドにデプロイしても、コンテナイメージやコンテナ、Kubernetesについて考える必要がないということになります。

開発者は、ソースコードと希望するランタイムセマンティクス以外のものをホスティングランタイムに提供する必要がない、というところまで来ているのです。「コンテナ」について学ぶ必要性は、まもなく過去のものになるかもしれません。現在の状況を考えると希望的観測かもしれませんが、その可能性はこれまでよりもずっと近くなったように感じられます。そしてこれは、Code Engineの設計目標の1つである「開発者をプラットフォームに合わせるのではなく、開発者が生きている場所に合わせる」ことにも合致しています。

Code Engineは、この「イメージ作成プロセス」をさらにシンプルにできるかどうかを追求しています。その様子をビデオでご覧いただけます。このビデオでは、ソースコードから直接、Code Engineのワークロード(アプリまたはバッチジョブ)をすばやくデプロイする方法を紹介しています。

Code Engine How to

 

この後は、ぜひご自身でCode Engineを試してみてください。Code Engineには無料枠(一定の条件に達するまで無料)があるので、購入する前に実際に使ってみることができます。サンプルやチュートリアルをご覧になれば、移行をスムーズに進めることができるでしょう。

 

始める準備はできましたか?

IBM Cloud Code Engineを始めましょう。ランディング・ページにアクセスして Code Engine を知ってください。その後、ドキュメントの「Getting Started with Code Engine」に進み、コンテナバッチ・ジョブをデプロイするか、ソース・コードを直接デプロイしてください。

 

参考情報:

IBM Cloud Code Engineにコンテナをデプロイする

IBM Cloud Code Engine でバッチ・ジョブを実行する


翻訳:IBM Cloud Blog Japan 編集部

*このブログは、2021/4/20に発行された“Deploying Source Code to IBM Cloud Code Engine”(英語)の抄訳です。

More IBM Cloud News stories

キー・パートナーに訊く |「よく生きるための技術を広めたい」田中正吾

IBM Cloud Blog, IBM Partner Ecosystem

IBM Championとして2018年から活動を継続されている田中正吾氏に、日本IBM カスタマー・サクセス・マネージャーの加藤典子が訊きます。 <もくじ> 2人の出会い | TJBotをみんなで作ろう!  上手くいく ...続きを読む


ビジネスパートナー様10社を表彰

IBM Cloud Blog, IBM Partner Ecosystem

日本IBMのビジネス発展に寄与いただき顕著な業績をおさめられた10社のビジネスパートナー様を表彰させていただきます 日本IBMは、2024年2月28日(水)開催「IBMビジネスパートナー・エグゼクティブ フォーラム202 ...続きを読む


ビジネスパートナー様55社へ感謝状を贈呈

IBM Cloud Blog, IBM Partner Ecosystem, デジタル変革(DX)

2023年、日本IBMのビジネス発展に寄与いただきました55社のビジネスパートナー様に、深く感謝しトロフィーを贈呈させていただきます。 ここに、ご貢献パートナー様を、ご紹介申し上げます(会社名50音順) [1] 新たなビ ...続きを読む