Alibaba Cloud SAEでwebアプリをコンテナデプロイする

# overview

GCPやAWSでよくやる、サーバーレスサービスにコンテナ化したアプリケーションデプロイするやつをアリババでもやってみよう！とふと思い立ったので、いじってみる。

デプロイしたあとはモニタリングとかアラートとかも触ってみよう　とのことで、一旦デプロイまでやってみる！

# SAEについて

Alibaba Cloudを眺めているとSAE(**Serverless App Engine**)を発見した　これだ〜

[公式ドキュメント](https://www.alibabacloud.com/help/ja/sae/serverless-app-engine-classic/product-overview/what-is-serverless-app-engine-1?spm=a2c63.p38356.0.0.13fb1c16D4VMdi)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/7fb9527d-6035-6fec-b3b1-a8125fbb4d8f.png)


[クイックスタート](https://www.alibabacloud.com/help/ja/sae/serverless-app-engine-classic/getting-started/sae-1-preparations?spm=a2c63.p38356.0.0.635298e3o4KgT8)  によると、名前空間とVPCを先につくっておく必要があるみたい

今回はdockerイメージをデプロイしたいので、Container Registryも用意をしておく

# いざ使ってみる

名前空間とVPCをそれぞれつくる

![%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88_2024-10-28_16.33.33.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/f53ef14e-d1e2-4744-0b43-e6d5c45868fb.png)

![%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88_2024-10-28_16.34.50.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/8a5a60d9-6d7a-2df2-0b52-9afd4d28b4bf.png)


そしてContainer Registryにdocker imageをpushしておく

今回はただpythonでfastapiを用いてhelloを返すだけのアプリケーションをpushした

![%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88_2024-10-28_16.36.09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/7719e5e9-bc69-4c6c-1389-72ad6fc96f22.png)


どうやらVPCに付随するセキュリティグループもいるようなのでそれもつくる


![%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88_2024-10-28_16.38.04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/8c0ffa68-f4fc-9b00-388a-1c5abc5989bf.png)


いざSAEで Create Application　する！
![%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88_2024-10-29_22.41.04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/2c4e58bc-d686-4f6c-1e84-c9a92229391a.png)


![%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88_2024-10-28_16.42.08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/4c515ad2-5060-d928-fe5c-dc51a777dd4e.png)


アプリケーションつくるときに色々設定できるみたい

- Startup Command Settings
- Image Startup Acceleration(ContainerRegistryがEnterpriseのときのみ)
- Environment Variable Settings
- Service Registration and Discovery
- Hosts Binding Settings
- Application Health Check
- Application Lifecycle Management
- Application Outbound/Inbound Internet Access
- Log Collection Service
- Persistent Storage
- Configuration Management

この中で今回はApplication Health Checkを設定してみる

Application Instance Liveness CheckとApplication Business Readiness Checkをそれぞれ設定できるみたいなので設定してみる

![%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88_2024-10-29_22.51.14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/a9a2d5d1-9fb0-6727-85c8-f02b25d3e7ee.png)
![%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88_2024-10-29_22.42.36.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/c64e7205-7694-5315-0672-8b67a33c0e1b.png)


いざデプロイ！

Applicationsから詳細みてみるとなにやらImagePullBackOffでエラーが。。。

![%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88_2024-10-29_18.26.01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/7ce8e127-2676-bb00-cfe0-f6ad1e1e70b0.png)



imageのアドレスがContainerRegistryのものと違うみたい

なんでや！と思い[公式ドキュメント](https://www.alibabacloud.com/help/ja/acr/user-guide/individual-edition-instance-independent-domain-name-capacity-limit?spm=a2c63.p38356.0.0.64fd498fXXVHe5)をみていたら該当箇所の記述発見！

![%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88_2024-10-29_18.28.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/4b326c06-d2ac-f1da-2965-bc2cb50b3aae.png)



oh…

選択すると旧バージョンのアドレスが入るっぽいので直接入力でimageアドレスを更新したらいけた！！

![%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88_2024-10-29_22.55.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/bb2fcc10-92ce-85fb-d2dc-55ebb4a1b077.png)


health checkも問題なし！

でもこのままだとパブリックアクセスできないので、Basic Informationタブの下部からSLBを設定する〜

![%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88_2024-10-29_22.57.07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/f1f1a6a6-ae0c-5637-b869-a94400a85b85.png)


![%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88_2024-10-29_22.57.49.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/8cce05c3-0ff7-69a2-d76b-d4cafb1ac665.png)


しばしまって現れたエンドポイントにアクセスする

![%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88_2024-10-29_23.01.59.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/6cfad7a9-751f-4b6f-c063-707d4bcea7be.png)


きた〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

これで簡易的なデプロイ完了〜✌️

今回はここまで！

次はモニタリングやアラートをみてみようと思う〜〜〜〜〜〜〜〜