Share
Embed
AI駆動開発 IBM Bob で IBM Cloud サーバレス環境へ移植
このテーマのポイント:
IBM Bob を使ってクラウド移植の計画を自動生成したこと
IBM Cloud CLI によってデプロイ作業を省力化したこと
Code Engine を使ってバックエンドをサーバレス化したこと
1kano
August 01, 2026
Transcript
21 slides
-
JICUG(Japan IBM Cloud User Group) IBM Bob で サーバー から
サーバレス IBM Cloud へ移植 AI駆動開発 FunnyGeek 鹿野 市郎 -
自己紹介 KANO Ichiro ◼ 所属/経歴 鹿野 市郎 • 電機メーカー勤務 •
経歴 1. サーバーのグローバル製造技術/営業 2. データセンター・プロジェクト 3. マネージドサービス(マルチクラウド・ハイブリッドクラウド) • 副業いろいろ -
はじめに このテーマのポイント: 1. IBM Bob を使ってクラウド移植の計画を自動生成したこと 2. IBM Cloud CLI
によってデプロイ作業を省力化したこと 3. Code Engine を使ってバックエンドをサーバレス化したこと IBM Object Storage フロントアプリ フロントアプリ バックエンドアプリ IBM CodeEngine バックエンドアプリ 仮想サーバー(IaaS) サーバーレス -
1. 導入:今回のテーマ 今日は「AI駆動開発で作ったマルチプレイゲームを、IBM Cloud に CLI だけでデプロイするまでの道のり」を共有します 前回 • 前回までに
IBM Bob を使って、Web / Application / DB の三層構成アプリを自動生成。 • さらに IBM Bob を使って、Terraform で Code Engine / ICOS / Cloudant にデプロイするIaC生成 を実践しました。 • 課題は Terraform の知見。 「お作法を覚えるまでの学習コスト」が重い。 今月は IBM Bob を使って、IBMCloud CLI によるデプロイに挑戦 -
2. 移植方式の相談 • Bob を 2.0 にアップデート • 3つの候補 Bob
チャットに「API 経由で Code Engine にデプロイしたい」と伝えたら: – IBM Cloud API をラップした MCP Server を自作 – IBM Cloud CLI – Terraform を MCP で操作する • MCP Server 自作は「やり直しリスク」が高いので、 今回は CLI でコード化する方針に決定 -
チャット 「MCPサーバー自作 と CLIコード化の比較して」 比較軸 MCP Server 自作 ibmcloud CLI
コード化 実装コスト 高い(MCPサーバーのスキャフォールド+IBM Cloud SDK実装) 低い(CLIコマンドをスクリプト化するだけ) 信頼性・安定性 IBM Cloud SDKの変更に追従が必要 CLIは後方互換性が高く安定 Bobとの統合 ネイティブ(ツールとして直接呼べる) シェル実行経由(execute_command) デバッグのしやすさ 難しい(MCPレイヤー+API層の2段構え) 簡単(CLIコマンドをターミナルで直接試せる) 認証管理 IAM APIキーをMCPサーバー側で管理 ibmcloud login 済みセッションを再利用できる エラーメッセージ 自前でパース・整形が必要 CLIが人間可読なメッセージを返してくれる 対応サービスの幅 実装した分だけ ibmcloud CLIプラグインが対応する全サービス オフライン開発 SDK変更でテスト環境が壊れうる --dry-run や --help でオフライン確認可 再利用性 高い(他プロジェクトにも適用可) スクリプトはプロジェクト依存になりがち 将来IBM公式MCPが出たとき 作り直し or 競合が発生 CLIスクリプトはそのまま残せる 自作は、後で変更追従とか機能不足とか悩み多そう… CLIでやる! -
3. 題材:マルチプレイゲームのクラウド移植 シンプルな移植を、AIに自動実行させる • 1台の Linux サーバーで動くマルチプレイゲームを題材にする – バックエンド:Node.js –
フロントエンド:JavaScript • クラウドネイティブ化する – バックエンド → Code Engine – フロントエンド → ICOS(WEBホスティング) -
4. Bob が作成したデプロイ計画 Bob は以下の7章構成で Bobデプロイ計画.md を生成 • • •
• • • • アーキテクチャ概要 前提条件・依存関係 設計上の重要課題 デプロイ全体フロー – フェーズ1: IBM Cloud 環境準備 – フェーズ2: コンテナイメージのビルドと ICR への push – フェーズ3: Code Engine アプリのデプロイ – フェーズ4: ICOS バケット作成と静的ファイルアップロード – フェーズ5: ICOS の静的ウェブサイトホスティング設定 – フェーズ6: 動作確認 環境変数一覧 コスト見積もり 運用上の注意事項 -
5. このタスクの質問あるか? タスク実行前に Bob へ質問あるか聞くことをお勧め 質問 IBM Cloud のリソース状況について、 Code
Engine プロジェクトと ICOS バケットは既に作成済みですか?また、使用 予定の IBM Cloud リージョンを教えてください(例:jp-tok, us-south など) 私の 回答 [.env]ファイルに記載あるので参照して 完璧です。必要な情報が揃いました。計画書を作成します。 -
6. 移植順序 Bob の計画に沿って、以下の順で実行 事前 • – WebSocket URL の
meta タグ対応を実装 フェーズ1 • – – – – – – Dockerfile 作成 docker build ibmcloud cr login docker push フェーズ3 • – ibmcloud ce project create ibmcloud ce application create --scale-min 1 -scale-max 1 フェーズ4 • – – – ibmcloud login ibmcloud target -g default フェーズ2 • – ibmcloud cos service-instance-create ibmcloud cos bucket-create 静的ファイルアップロード フェーズ5 • – – bucket-policy-put(パブリック読み取り) bucket-website-put フェーズ6 • – 動作確認チェックリストに沿ってテスト → ゲーム画面が正 常に動作し、マルチプレイも成功。 作業手順を設計する大変だから、AIありがたい -
7. コスト最適化 • 課金しているのは Code Engine アプリのみです。 • デプロイ後は ICOS
のアクセス権を削除し、Code Engine の 起動を停止して、無料枠で維持できる状態に調整。 リソース Code Engine アプリ(minscale=1 で常時稼働) 課金状況 課金中 停止方法 アプリ削除またはスケール0に変更 Code Engine プロジェクト Free 無料 残存可 ICR イメージ(46MB) 無料枠500MBを超えると課金 (現在は枠内) 残存可(削除すれば再プッシュ不要) ICOS インスタンス(lite プラン) Free 無料 残存可 ICOS バケット・オブジェクト Free 無料(lite 枠内) 残存可 -
クラウド移植後のアプリデモ ザリガニ移動 (上下左右) [↑] [←][↓][→] 攻撃 [スペースキー] プレイヤー画面 https://s3.jp-tok.cloud-object-storage.appdomain.cloud/********************.html 管理者画面
https://s3.jp-tok.cloud-object-storage.appdomain.cloud/********************.html -
Before / After • 仮想サーバー(IaaS) から サーバレス へクラウド移植(AIで移植) IBM Object
Storage フロントアプリ フロントアプリ バックエンドアプリ IBM CodeEngine バックエンドアプリ 仮想サーバー(IaaS) サーバーレス -
8. まとめ • Bob と CLI を組み合わせ AI駆動アプリ開発からクラウドデプロイまでの流れが爆時短 • Terraform
のような本格 IaC が理想だが、 CLI でクラウド操作をコード化するだけでもAI時代は効果あり • 次は、監視モニタリングの進化した姿「オブザーバビリティ」を計装する • 今後は MCP や API 連携も視野に入れつつ、 AI × IBM Cloud の開発体験をさらに磨いていきたい。