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
98
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
32
ワイがおすすめする新潟の食 / 20250530phpconf-niigata-eve
kasacchiful
0
300
生成AIでメタデータを生成してみた / 20250525generate-metadata-using-generative-ai
kasacchiful
0
52
Strands Agents SDK で AIエージェント作成 を試してみた / 20250525strands-agents
kasacchiful
0
100
いろんな世界を見てみよう / 20250508ninno_tech_fest
kasacchiful
0
28
Amazon Q Developer for CLIのある生活 / 20250427ai_craft_hacks_niigata1
kasacchiful
1
75
AWSのコンテナサービス / jawsug-akita-aws-container-services
kasacchiful
0
67
データ基盤でのコンテナ活用事例 / jawsug-akita-data-platform-with-container
kasacchiful
0
73
データ基盤でのコンテナ活用事例 / jawsug-niigata21-data-platform-with-container
kasacchiful
0
110
Other Decks in Programming
See All in Programming
機械学習って何? 5分で解説頑張ってみる
kuroneko2828
0
210
ワンバイナリWebサービスのススメ
mackee
10
7.7k
Use Perl as Better Shell Script
karupanerura
0
690
GoのWebAssembly活用パターン紹介
syumai
3
10k
Javaのルールをねじ曲げろ!禁断の操作とその代償から学ぶメタプログラミング入門 / A Guide to Metaprogramming: Lessons from Forbidden Techniques and Their Price
nrslib
3
1.9k
RubyKaigiで得られる10の価値 〜Ruby話を聞くことだけが RubyKaigiじゃない〜
tomohiko9090
0
140
Go Modules: From Basics to Beyond / Go Modulesの基本とその先へ
kuro_kurorrr
0
110
インターフェース設計のコツとツボ
togishima
2
710
Webからモバイルへ Vue.js × Capacitor 活用事例
naokihaba
0
550
業務自動化をJavaとSeleniumとAWS Lambdaで実現した方法
greenflagproject
1
100
Parallel::Pipesの紹介
skaji
2
910
実践ArchUnit ~実例による検証パターンの紹介~
ogiwarat
2
250
Featured
See All Featured
How to Ace a Technical Interview
jacobian
276
23k
Scaling GitHub
holman
459
140k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
137
34k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
4 Signs Your Business is Dying
shpigford
184
22k
Code Review Best Practice
trishagee
68
18k
The Language of Interfaces
destraynor
158
25k
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
Building an army of robots
kneath
306
45k
How STYLIGHT went responsive
nonsquared
100
5.6k
Typedesign – Prime Four
hannesfritz
42
2.7k
Making Projects Easy
brettharned
116
6.2k
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