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
what-is-container
Search
hiroaki
July 25, 2022
Programming
1
67
what-is-container
hiroaki
July 25, 2022
Tweet
Share
More Decks by hiroaki
See All by hiroaki
how to determine architecture
hiroaki_u
1
190
the-concept-of-product-creation-learned-in-startup-science
hiroaki_u
0
110
difference-between-nginx-and-apache
hiroaki_u
0
33
CI_CD_by_Code_Brothers_by_AWS
hiroaki_u
0
24
think of study
hiroaki_u
1
68
CI/CD with CodePipeline and ECS
hiroaki_u
0
100
Other Decks in Programming
See All in Programming
CA.swift19 恋するAIアプリ開発の裏側
oskmr
0
370
Ruby Pattern Matching
bkuhlmann
0
930
AmperとFleetを使ったAndroidアプリ
yoppie
0
210
単体テストを書かない技術 #phpcon_odawara
o0h
PRO
27
8.3k
VS Code をプロダクトにどう取り込むか
onomax
1
470
MetricKitで予期せぬ終了を検知する話 / Detect unexpected termination with MetricKit
nekowen
1
190
Prepare for Jakarta EE 11 - Performance and Developer Productivity
ivargrimstad
0
890
『Railsオワコン』と言われる時代に、なぜブルーモ証券はRailsを選ぶのか
free_world21
0
270
OpenAPIを中心に考えるAPI開発入門 / Introduction to API Development with a Focus on OpenAPI
seike460
PRO
2
170
TCAとKMPを用いた新規動画配信アプリ 「ABEMA Live」の設計
tomu28
1
120
スクラムガイドのスプリントレトロスペクティブを改めて読みかえしてみた / Re-reading the Sprint Retrospective Section in the Scrum Guide
mackey0225
3
450
ADRを一年運用してみた/adr_after_a_year
hanhan1978
7
2.4k
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
24
2k
Designing for humans not robots
tammielis
248
25k
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
2
3.4k
A Modern Web Designer's Workflow
chriscoyier
689
190k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
9
8.3k
Optimising Largest Contentful Paint
csswizardry
8
2.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
16
2.6k
Atom: Resistance is Futile
akmur
259
25k
Debugging Ruby Performance
tmm1
70
11k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.6k
Adopting Sorbet at Scale
ufuk
68
8.6k
Transcript
コンテナってなんだ? hiroaki
Who am I ? 名前:hiroaki 技術:PHP/ Laravel, AWS 年齢:もうすぐ28歳 歴 :1年
趣味:筋トレ、サウナ
コンテナの話に入る前に・・・
サーバーで起こっていることを簡 単に確認してみましょう
アプリケーション ミドルウェア OS カーネル ハードウェア(CPU, メモリ等) デーモン ブートローダー デバイスドライバ シェル
GUI
OS ハードウェア(CPU, メモリ等) プロセス1 プロセス2 プロセス3 プロセス5 プロセス4 プロセス6
ミドルウェア プロセスを生成 カーネル 処理を実行 プロセス1 プロセス2 カーネルがプロセスを発行
プロセスを生成 プロセス発行する場所を分ける カーネル プロセス1 プロセス2 処理を実行
プロセス発行場所を分割 カーネル お互いのことは把握していない 全部把握
サーバー全体ではこんな感じ 引用:『軽くて使いやすい仮想化技術 「Docker」の仕組みとエンタープライズ 開発における4つの活用事例』
コンテナとは分離した プロセスの実行環境
Dockerとは?? コンテナを作り出すソフト
socket or API docker クライアント docker エンジン docker デーモン
コンテナはイメージから作られる 画像元:『アーキテクチャの理解(公式)』 docker run docker build docker run
隔離された実行環境 コンテナを作るソフト コンテナ Docker
コンテナが複数あるときを考える network volume
コンテナ複数立てるのは大変 network volume
複数コンテナを扱うスペシャリスト docker-compose
コンテナを複数立ち上げるのは大変 network volume
docker-composeなら余裕 docker-compose.yml
本番環境の運用を考える EC2 サーバーダウン
本番環境は冗長化するのが基本 同じコンテナ構成作るの面倒。。。
コンテナ オーケストレーションサービス Kubernetes ECS EKS
同じコンテナ構成をつくる
サーバーの構成を維持する
サーバーの構成を維持する ✨ ✨ ✨
隔離された実行環境 コンテナを作るソフト コンテナ Docker docker-compose ECS 複数コンテナを 実行するツール コンテナを管理するサービス
ご清聴ありがとうございました。
References ・仮想化技術 https://codezine.jp/article/detail/7894 Web Sites etc. ・ECS https://kws-cloud-tech.com/ https://www.slideshare.net/zembutsu/what-isdockerdoing ・Dockerのアーキテクチャ
https://www.ogis-ri.co.jp/otc/hiroba/technical/docker/part6.html https://knowledge.sakura.ad.jp/21387/ ・docker-compose https://docs.docker.jp/engine/introduction/understanding-docker.html