IBM Code Engineが立ち上がらない時のデバッグ方法

IBM Code Engine にデプロイする時、エラーが出てデバッグしたい方向けに情報共有。
公式のドキュメントが結構親切なのでおすすめです。 ↓

https://cloud.ibm.com/docs/codeengine?topic=codeengine-cli

まず、失敗したところ。ブラウザからこんな感じで見える。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184221/0ff744ca-623c-b790-fc61-941a48ac37a9.png)


GUI で見れない情報もありそうなので、`ibmcloud`コマンドを実行した。

まず、必要なプラグインを入れる（ibmcloud-cli は入ってる前提）。

```bash
ibmcloud plugin install code-engine
```

ログインして、必要な情報を入れていく。ログイン方法はいくつかありそうなので必要に応じて要グーグル。

```bash
ibmcloud login --sso
ibmcloud target -g cc-6620032tyv-cac4436e
ibmcloud ce project select -n cc-6620032tyv-cac4436e-codeengine
ibmcloud ce app get --name hoge-rag
```

`-g`のところはリソースグループ
`-n`のところはプロジェクト
`--name`のところはアプリケーション名

以下のキャプチャ参照

リソース・グループとプロジェクト名
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184221/674d954f-0267-11c3-6467-d8ce03045507.png)

リソース・グループはここからでもみれる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184221/65056b6f-a9b2-d199-f9aa-7e7fa950567a.png)


アプリケーション名
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184221/26ee373d-e530-6063-60b6-6102952f2e7d.png)


最後のコマンド実行後、こんなメッセージが出る。そこまで情報量ない。

```bash
For troubleshooting information visit: https://cloud.ibm.com/docs/codeengine?topic=codeengine-troubleshoot-apps.
Run 'ibmcloud ce application events -n hoge-rag' to get the system events of the application instances.
Run 'ibmcloud ce application logs -f -n hoge-rag' to follow the logs of the application instances.
OK

Name:            hoge-rag
ID:
Project Name:
Project ID:
Age:             19h
Created:         2023-11-28T16:41:47+09:00
URL:
Console URL:
Status Summary:  Application failed to deploy, no revisions ready

Environment Variables:
  Type     Name          Value
  Literal  CE_APP        hoge-rag
  Literal  CE_DOMAIN     us-south.codeengine.appdomain.cloud
  Literal  CE_SUBDOMAIN
  Literal  PASSWORD
  Literal  USERNAME      hoge
Image:                  us.icr.io/
Resource Allocation:
  CPU:                1
  Ephemeral Storage:  400M
  Memory:             4G
Registry Secrets:
  cr
Port:                   8080

Runtime:
  Concurrency:         100
  Concurrency Target:  100
  Maximum Scale:       10
  Minimum Scale:       0
  Scale Down Delay:    0
  Timeout:             300

Readiness Probe:
  Type:              tcp
  Port:              0 (use listening port)
  InitialDelay:      0 seconds
  Interval:          10 seconds
  Timeout:           1 seconds
  FailureThreshold:  1

Conditions:
  Type                 OK     Age  Reason
  ConfigurationsReady  false  59m  RevisionFailed : Revision "hoge-rag-00005" failed with message: Initial scale was never achieved.
  Ready                false  59m  RevisionMissing : Configuration 'hoge-rag' does not have any ready Revision.
  RoutesReady          false  59m  RevisionMissing : Configuration 'hoge-rag' does not have any ready Revision.

```

他にもこんなコマンドがある、必要に応じて、それっぽく入力していく。`--instance`の後のインスタンス名はコンテナが動いていれば、上記`ibmcloud ce app get --name hoge-rag`コマンドで表示されるはず。

```bash
ibmcloud ce app events --app myapp
ibmcloud ce app events --instance myapp-atfte-2-deployment-7cb45cdf67-qc7sb
ibmcloud ce app logs --app myapp
ibmcloud ce app logs --instance myapp-atfte-2-deployment-7cb45cdf67-qc7sb
```

ちなみに、デフォルトのポートが8080なので、少し注意。
https://cloud.ibm.com/docs/codeengine?topic=codeengine-application-workloads&locale=ja