Load to Professional...

AWSエンジニアの日常。地に足をつける。

【ハンズオン参加レポ】「AWSの基礎を学ぼう 特別編 最新サービスをみんなで触ってみる AWS App Runner」に参加しました。

f:id:oni_rb:20210529232414p:plain

はじめに

awsbasics.connpass.com

毎週土曜日の日課で、今週もAWSハンズオンイベントに参加しましたので、参加レポートを書いていきます。

今日はLTの参加者が多くチャット欄も盛り上がってました。

ハンズオン編

ハンズオンまとめ

  • App Runnerは爆速でWebアプリをデプロイできる

    →リージョン負荷状況、アプリのサイズにもよる

  • リリース直後のサービスのため、まだまだ制約がたくさんある

    →詳しくはGithubのロードマップを確認しよう

App Runnerについて

ハンズオン実施概要

今日のハンズオン資料は下記主催の亀田さんのGithubのPublicリポジトリで公開されています。

https://github.com/harunobukameda/AWS-App-Runner

1. ECR/GithubにWebアプリ(Dockerイメージ or ソースコード)をアップロードする

  • Github接続は下記のような機能で実装されているようです

    App Runner は、アカウントに「AWS Connector for GitHub」というアプリをインストールすることで、ソースコードをデプロイします。このアプリは、メインの GitHub アカウントまたは GitHub 組織にインストールできます。

2. App Runnerからアプリケーションをデプロイする

  • CPU/メモリ:
    • 1-2 vCPU
    • 1-4 Memory
      • まだ小さいものしか選択できないので今後のアップデートに期待
  • デプロイトリガー:自動
    • ソースに更新があった場合に自動でローリングアップデートしてくれる
  • ヘルスチェック:
    • /(スラッシュ)にたいしてTCPで疎通を行う
    • アプリによっては意識しないといけないかも

3. デプロイ完了

  • 発行されたドメイン(CNAME)から、Webアプリにアクセス可能。今回はHello World!!が見えるとこまで

f:id:oni_rb:20210704155033p:plain

  • ログ:設定なしで見ることが可能、CloudWatchLogsへ自動で登録される

f:id:oni_rb:20210704155105p:plain

f:id:oni_rb:20210704161521p:plain

学んだことやTipsなど

VPCに組み込めない

  • ロードマップ上には記載されているので、そのうち対応されるかも
    • App RunnerのGitにロードマップあります!

    https://github.com/aws/apprunner-roadmap/issues

    • ざっと見た感じ「VPC統合」「サーバレス化」のISSUEが盛り上がってます。
    • コメント数多い=早く実装されるではないかと思いますが。。
  • ex). RDSとApp Runnerを接続したい場合は?
    • RDSを外部公開(Public公開)する必要がある
    • VPCに組み込めないのでインターネット経由でアクセスする必要があり、現時点では、このようなユースケースならFargateでやるべき

App Runner以外のこと

  • ECRのTagについて:
    • コンテナを扱うときはTagをつける(一般的にはlatest)
    • 実際に運用する場合、 latest運用だと辛いので、コンテナイメージのtag = gitなどのコミットID にするとトレースが楽

LT編

今週は、3名の方のLTがありました。

いつもより盛り上がった!気がします。

LT①:App Runner + Copilot Pipeline

Speaker::おぎさん

speakerdeck.com

まとめ

  • コンテナ環境のデプロイを簡単にできる
    • App Runnerへのデプロイにも対応した!
  • マネコンポチポチでやった手順が、copilot initで一発でいける
  • 「copilot pipeline init」を使えば、Codeシリーズを利用したCI/CDパイプラインを自動構築できる

注意点

  • copilot initを実行時点で空のECSができる
    • App runnerのVPC対応を見越しているのか?
  • App RunnerとCodeBuildでDockerのバージョンが違う
  • 1ステージ=1VPCになるのでVPC運用に注意

LT②:AWS App RunnerでASP.NET Core Webアプリケーションを動かしてみた

Speaker:木村さん

www.slideshare.net

まとめ

  • App Runnerは超優秀
    • 手軽にWebアプリを動かすPaasとして優秀
  • .NETアプリも動く
  • 他言語のCI/CDもやりたい
  • ちょっと高い

Tips

  • 環境変数設定時には「:」は「__(アンダーバー2つ)」で表す ※EBも同じ

LT③: App Runner + Railsで詰まったこと

speaker:水本さん

zenn.dev

まとめ:苦労したところ

  • Port指定で3000を登録しても、ログでは8080になってたりした →今は改善?
  • ログが流れない
  • ソースコードレポジトリからのデプロイ対応:Rubyも早く対応してほしい

まとめ:よかったところ

  • デプロイが楽
  • ログが見やすい
  • CloudWatchログとの自動連携