Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AWSのコンテナサービス / jawsug_niigata21_aws_container_s...
Search
kasacchiful
March 15, 2025
Programming
1
99
AWSのコンテナサービス / jawsug_niigata21_aws_container_services
2025/03/15 (土) JAWS-UG新潟#21 の補足資料
イベントページ:
https://jawsug-niigata.connpass.com/event/343520/
kasacchiful
March 15, 2025
Tweet
Share
More Decks by kasacchiful
See All by kasacchiful
Amazon Q Developer for CLI を使って PHP Conference 新潟 2025 参加者向けにグルメサイトを構築した話 / 20250620niigata-5min-tech
kasacchiful
0
50
ワイがおすすめする新潟の食 / 20250530phpconf-niigata-eve
kasacchiful
0
300
生成AIでメタデータを生成してみた / 20250525generate-metadata-using-generative-ai
kasacchiful
0
53
Strands Agents SDK で AIエージェント作成 を試してみた / 20250525strands-agents
kasacchiful
0
140
いろんな世界を見てみよう / 20250508ninno_tech_fest
kasacchiful
0
30
Amazon Q Developer for CLIのある生活 / 20250427ai_craft_hacks_niigata1
kasacchiful
1
79
AWSのコンテナサービス / jawsug-akita-aws-container-services
kasacchiful
0
68
データ基盤でのコンテナ活用事例 / jawsug-akita-data-platform-with-container
kasacchiful
0
74
データ基盤でのコンテナ活用事例 / jawsug-niigata21-data-platform-with-container
kasacchiful
0
110
Other Decks in Programming
See All in Programming
Team topologies and the microservice architecture: a synergistic relationship
cer
PRO
0
1.1k
iOSアプリ開発で 関数型プログラミングを実現する The Composable Architectureの紹介
yimajo
2
220
「ElixirでIoT!!」のこれまでとこれから
takasehideki
0
370
AIコーディング道場勉強会#2 君(エンジニア)たちはどう生きるか
misakiotb
1
250
PicoRuby on Rails
makicamel
2
110
Beyond Portability: Live Migration for Evolving WebAssembly Workloads
chikuwait
0
400
WebViewの現在地 - SwiftUI時代のWebKit - / The Current State Of WebView
marcy731
0
100
GraphRAGの仕組みまるわかり
tosuri13
8
500
Hypervel - A Coroutine Framework for Laravel Artisans
albertcht
1
110
関数型まつりレポート for JuliaTokai #22
antimon2
0
160
5つのアンチパターンから学ぶLT設計
narihara
1
120
GoのGenericsによるslice操作との付き合い方
syumai
3
690
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.3k
Done Done
chrislema
184
16k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Producing Creativity
orderedlist
PRO
346
40k
Six Lessons from altMBA
skipperchong
28
3.9k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.3k
Statistics for Hackers
jakevdp
799
220k
Docker and Python
trallard
44
3.4k
Transcript
AWSのコンテナサービス 笠原 宏 2025/03/15(土) JAWS-UG新潟#21
1. AWSのコンテナサービス一覧 2. この辺りから押さえよう Amazon ECR Amazon Lightsail コンテナサービス AWS
Lambda コンテナ AWS App Runner Amazon ECS / Amazon EKS AWS Batch 目次 2 / 11
引用: https://aws.amazon.com/jp/containers/ コンテナオーケストレーション Amazon ECS Amazon EKS (Kubernetesで管理) コンピューティング AWS
Fargate Amazon EC2 Amazon EC2 スポットインスタンス サポートツール・サービス AWS Copilot Amazon ECR AWS App Mesh AWS Cloud Map AWS Lambda AWS App Runner Amazon Lightsail AWS App2Container AWS Migration Hub Orchestrator AWSのコンテナサービス一覧 3 / 11
引用: https://aws.amazon.com/jp/containers/ オンプレミス Amazon ECS Anywhere Amazon EKS Anywhere エンタープライズ規模のコンテナ管理
AWS Proton AWS での Red Hat OpenShift サービス (ROSA) オープンソース Amazon EKS Distro AWS App2Container AWSのコンテナサービス一覧(続き) 4 / 11
Amazon ECR Amazon Lightsail コンテナサービス AWS Lambda コンテナ AWS App
Runner Amazon ECS / Amazon EKS AWS Batch コンテナ実行環境・まずはここから押さえておこう 5 / 11
ビルド済のDockerイメージを格納するリポジトリ ECRへの反映は、基本的にDocker CLIで行う マネコン上のECRリポジトリページでも確認できる ## login aws ecr get-login-password --region
ap-northeast-1 | \ docker login --username AWS --password-stdin \ <AWS ACCOUNT ID>.dkr.ecr.ap-northeast-1.amazonaws.com ## build docker build --platform linux/amd64 -t <Dockerイメージ名>:latest . ## push先に元イメージを参照するtagを作成 docker tag <Dockerイメージ名>:latest \ <AWS ACCOUNT ID>.dkr.ecr.ap-northeast-1.amazonaws.com/<ECRリポジトリ名>:latest ## push docker push <AWS ACCOUNT ID>.dkr.ecr.ap-northeast-1.amazonaws.com/<ECRリポジトリ名>:latest Amazon ECR 6 / 11
とりあえずコンテナ環境をサクッと作って、Webサービスやアプリケーションを 稼働させたい場合に、非常にお手軽に使える ロードバランサーが含まれている モニタリングやCI/CD周りは心許ない この辺りの課題が出てきたら、他のサービスを検討すると良いかも。 プライベートコンテナレジストリからのpullには対応してない 非公開で利用したい場合は、ローカルマシンからLightsailにプッシュ 参考: [アップデート] Amazon
Lightsail でコンテナが利用可能になりました! | DevelopersIO aws lightsail push-container-image --region <Region> --service-name <ContainerServiceName> \ --label <ContainerImageLabel> --image <LocalContainerImageName>:<ImageTag> Amazon Lightsailコンテナサービス 7 / 11
Lambdaは、Zipパッケージの他にコンテナを動かすことができる AWSが用意しているコンテナイメージをベースで使えるし、独自コンテナでラン タイム同梱利用もできる ECRにプッシュした後、Lambda関数へ反映する必要がある ARG FUNCTION_DIR=/function RUN mkdir -p ${FUNCTION_DIR}
COPY lambda_function.py ${FUNCTION_DIR} COPY requirements.txt / # Install dependencies RUN python3 -m pip install --target ${FUNCTION_DIR} awslambdaric RUN python3 -m pip install --target ${FUNCTION_DIR} -r /requirements.txt # Set runtime interface WORKDIR ${FUNCTION_DIR} ENTRYPOINT [ "/usr/local/bin/python3", "-m", "awslambdaric" ] CMD [ "lambda_function.handler" ] AWS Lambda コンテナ 8 / 11
ウェブアプリケーションを自動的に構築してデプロイ、負荷分散・スケールなど も自動的に行ってくれるサービス インフラに詳しくなくても、アプリケーションコードが書ければ動かせる Google Cloud Run / Azure App Service
に近いかも ECRにプッシュするか、GitHub/Bitbucketにソースコードをプッシュすると、自 動検知していい感じにデプロイされる ソースコードからAmazon LinuxベースのDockerイメージを自動生成 触ってみたい方は、2023年8月開催の「JAWS-UG新潟#14」でApp Runnerのハン ズオンやってるので、見てください https://github.com/kasacchiful/jawsug-niigata_20230805 参考: AWS入門ブログリレー2024〜AWS App Runner編〜 | DevelopersIO AWS App Runner 9 / 11
コンテナを管理するオーケストレーションサービス コンテナのワークロード、サービス、ライフサイクル、デプロイ等コンテナ に関わる調整と管理を行うもの ECSはAWSオリジナル、EKSはKubernetes コンテナが実際に稼働するコンピューティングリソースは、以下から選べる Amazon EC2 AWS Fargate Amazon
ECS / Amazon EKS 10 / 11
フルマネージド型バッチ処理実行サービス 大量の画像処理や機械学習のtraining等に使える 事前に設定する「ジョブ定義」とECRにプッシュされているDockerイメージ等を 用いて処理 処理のキューイング、Auto Scaling等のECS環境で分散処理、処理されたデー タの出力 (S3バケット等) まで実施してくれる 依存関係のあるジョブを実行可能、ジョブキューの優先度設定可能
AWS Batch 11 / 11