Blogは株式会社BuySellTechnologiesのエンジニア達が知見・発見を共有する技術ブログです。nmu0テクノロジー開発部の村上です。現在はアーキテクチャ周りを担当しています。弊社ではAPIをOpenAPIで定義し、モックを使いフロントエンドの開発を行っています。Runを代わりに使用してみたのでその紹介をしたいと思います。コンテナを使用したサーバーレスのサービスです。RunではHTTPサーバーが走るコンテナをデプロイします。言語等の制限なしに、基本的には何でも動かすことが可能です。PORTという環境変数で指定されたポートをlistenするHTTPサーバーが走る実際には8080が代入されるステートレスサーバーレスなので当然ですが、ディスク書き込みは実際にはメモリ書き込みになるのは注意です詳細な制約は、以下の公式ドキュメントに書かれています。contractちなみに、技術的にはKubernetes上でKnativeというミドルウェアを使って動作させています。自身のGKEクラスタ上にデプロイすることも出来るようになっています。APIの定義のためのフォーマットの1つです。3.0.0が出ています。APIの定義がしやすくなるのは勿論ですが、そこで定義したインターフェースに従った各種言語・フレームワークのコードを生成出来るという利点があります。Generatorというツールを使用します。Bootを指定すると、ドキュメント兼モックサーバーが生成されます。知りました)ここでいうモックサーバーとは、OpenAPIで定義したAPIの出力例に従ったレスポンスを返してくれるサーバーのことを意味しています。それを接続先にすることで、フロントエンドの開発がやりやすくなります。Runにあっているユースケースだと考えられます。Engineが向いているケースも多くあると思います。実際にデプロイするそれでは実際にデプロイしてみましょう。以下の3手順が必要となります。Bootのコードを生成します。Dockerイメージが用意されているので、以下のコマンドを叩けば良いです。Runではポート8080をlistenするので、--additional-propertiesで指定する必要があります。Bootのアプリケーションのコードが生成されるので、mavenでアプリケーションをビルドします。package今回はmavenの公式Dockerイメージを使用しましたが、勿論ローカルのmavenでも問題ないです。これで、springs_stub/target/openapi-spring-1.0.0.jarにアプリケーションがパッケージされました。imageを上げておく必要があります。Registryに上げておきます。Bootアプリケーションの生成・ビルドをDockerfile内で定義することも勿論可能です。今回は手順を分けました。buildを使うと良いかと思います。Buildを使用すると、カレントディレクトリ上のDockerfileを読み込んでGCP上でビルドとデプロイが行われます。Runにデプロイします。BootはJavaのアプリケーションで、メモリを多く必要とするので、メモリを明示的に指定しています。(デフォルトは256MiB)いかがでしょうか。普段Dockerを使っている方には、非常にシンプルに見えたかと思います。現在はβ版なので、正式リリースされることとasia-northeast1リージョン対応に期待です。11:52バイセルテクノロジーズではエンジニアを募集しています!興味がありましたら以下のリンクからご応募ください。上で実行する高速エンハンス開発を可能にするテスト手法フルスクラッチで開発。マイクロサービスについてSpinnakerをTLS(SSL)対応させる月別アーカイブスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。