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
20200129_ビヨンド勉強会__22_関西の駆け出しDocker職人に贈るコンテナサマリー.pdf
Search
nezumisannn
January 29, 2020
Technology
0
800
20200129_ビヨンド勉強会__22_関西の駆け出しDocker職人に贈るコンテナサマリー.pdf
nezumisannn
January 29, 2020
Tweet
Share
More Decks by nezumisannn
See All by nezumisannn
20230511_AWSにおけるコンテナサービスの選択とIaC実装例.pdf
nezumisannn
0
880
リーダーになって1年経過して_取り組んできたことと大事にしている考え方_の裏側_.pdf
nezumisannn
0
49
20211118_GKEにおける高負荷時のPodとWorker_Nodeの挙動について.pdf
nezumisannn
0
93
20211014_Alibaba_Cloud_Container_Service_for_KubernetesにおけるServerless_Kubernetesの概要とManaged_Kubernetesとの違い.pdf
nezumisannn
0
53
20211008_ApsaraDB_for_PolarDBとAWS_Auroraの機能比較.pdf
nezumisannn
1
82
20210122_AlibabaCloudパートナーサミット_Terraform_Cloudを活用するマルチクラウドオートメーション.pdf
nezumisannn
0
35
20201203_AlibabaCloudセミナー_ApsaraDB_for_PolarDB_の便利機能と競合DBとの差別化ポイントの紹介.pdf
nezumisannn
0
12
20200617_ビヨンド勉強会_24_Terraformにおけるディレクトリ構造のプラクティスと記述事例.pdf
nezumisannn
0
250
20200522_FGDC_Terraform_CloudでGitOpsを使用したCI_CDパイプラインを構築する.pdf
nezumisannn
0
370
Other Decks in Technology
See All in Technology
テストプロセスで大事にしていること #jasstnano
makky_tyuyan
0
150
継続的な改善 x ⾮連続的な進化
sansantech
PRO
3
130
開発生産性向上サービスを作るFindyが自分たちで開発生産性を爆上げした組織づくりの歩み / Findy's path to boosting its own development productivity 2024-04-17
ma3tk
3
470
サーバー間 GraphQL と webmock-graphql の話 / server-to-server graphql and webmock-graphql
qsona
2
170
元インフラエンジニアに成る / Human Resources to Human Relations
bobtani
4
890
JAWS-UG Bedrock Claude Night
yamahiro
3
470
SIEMを用いて、セキュリティログ分析の可視化と分析を実現し、PDCAサイクルを回してみた
coconala_engineer
0
270
少数チームで挑む: SwiftUI, TCA, KMPを用いた 新規動画配信アプリ 「ABEMA Live」の開発について
tomu28
0
610
**強い**エンジニアのなり方 - フィードバックサイクルを勝ち取る / grow one day each day
soudai
64
19k
「手動オペレーションに定評がある」と言われた私が心がけていること / phpcon_odawara2024
blue_goheimochi
2
370
Vertex AI を中心に 生成AIのアップデートを共有します
kaz1437
0
280
Algyan イベント振り返り
linyixian
0
200
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
27
6.3k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.6k
Web development in the modern age
philhawksworth
202
10k
Agile that works and the tools we love
rasmusluckow
324
20k
Visualization
eitanlees
135
14k
Design by the Numbers
sachag
274
18k
Robots, Beer and Maslow
schacon
PRO
155
7.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
34
8.9k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
1
1.3k
Code Review Best Practice
trishagee
54
15k
WebSockets: Embracing the real-time Web
robhawkes
59
7k
Six Lessons from altMBA
skipperchong
20
3k
Transcript
関西の駆け出しDocker職人に 贈るコンテナサマリー ビヨンド勉強会 #22 2020/01/29 株式会社ビヨンド 寺岡 佑樹
自己紹介 resource “my_profile” “nezumisannn” { name = “Yuki.Teraoka” nickname =
“ねずみさん家。” company = “beyond” job = “Site Reliability Engineer” twitter = “@yktr_sre” skills = [“terraform”,”packer”] }
このセッションで話すこと • Dockerとコンテナの概要 ◦ 使ったことがないから使ってみようへシフト • コンテナマインドセット ◦ 使い始めるときに必要な考え方
このセッションで話さないこと • Dockerの使い方・コマンド ◦ 次のセッションにご期待ください
Docker is 何?
このクジラの名前は? ↑ Dockerと呼ぶらしい
Docker is 何? • コンテナと呼ばれる仮想環境を提供するOSS • 開発はdotCloud社(現Docker社) • 仮想化という部分では同じだがハイパーバイザー型とは異なる ←上に乗ってるこれ
コンテナ is 何? • アプリケーション及び依存関係をパッケージ化して抽象化したもの • 複数のコンテナを同じマシン上で実行してOSのカーネルを共有できる • 各コンテナはユーザー空間で独立したプロセスとして実行される
つまり? コンテナ型 ハイパーバイザー型 https://www.docker.com/resources/what-container
Dockerが注目される理由
Dockerが注目される理由 • コンテナ管理のための優れた機能が実装されている ◦ コンテナに必要な要素を イメージ化 (Docker Image) ◦ イメージの共有
(DockerHub) ◦ コードによるコンテナの実行 (Dockerfile / Docker Compose) Write Build and Share Run なぜコンテナ化するのか
コンテナの価値
コンテナの価値 • Agility (敏捷性) • Portability (可搬性)
Agility • コンテナはゲストOSがなくホストOSのカーネルを共有している • オーバーヘッドが少なく起動はもちろんビルドやデプロイも早い • 要求に応じて必要なリソースを迅速に展開できる
Portability • イメージの仕様をDockerfileでコード化できる • コンテナイメージを用意すればどの環境でも同様に実行できる • アプリケーションが動作するための環境の再現性が非常に高い
コンテナ化の罠
コンテナ化の罠 • アプリケーションをコンテナ化することが目的になっていませんか? • コンテナ化は手段であって目的ではない • それコンテナにする必要あんの?は絶対言われる
コンテナ化の目的
コンテナ化の目的 • アプリケーションを迅速に展開して開発スピードを上げること • 特定の環境への依存を減らして運用負荷を下げていくこと • クラウドネイティブなアプリケーションの開発 ユーザーエクスペリエンスの向上
クラウドネイティブ
クラウドネイティブ • 回復性・管理力、及び可観測性のある疎結合システムと、堅牢な自動化を組み合 わせることにより、システム変更を最小限の労力で、頻繁かつ予測通りに行う設計 思想 書籍:Kubernetes実践ガイドより引用 ユーザーが期待するアプリケーションを スピードや品質といったビジネス価値として提供すること
つまり? • Dockerを活かせばクラウドネイティブにおける価値を提供できる ◦ リードタイム(コードのコミットから本番稼働までの所要時間 )の削減 ◦ デプロイ頻度の増加 ◦ MTTR(平均修復時間)の短縮
◦ 変更失敗率の低減 4つをまとめてデリバリーパフォーマンスと呼ばれる
クラウドネイティブの構成要素 • アプリケーションのアーキテクチャ ◦ マイクロサービス • コンテナオーケストレーション ◦ Kubernetes •
Dockerと合わせて学習する必要がある Kubernetes is 何?を語るために必要な基礎知識 20191120_ビヨンド勉強会__21_Kubernetes_is_何_を語るために必要な基礎知識 .pdf
まとめ
まとめ • Dockerはコンテナと呼ばれる仮想環境を提供するOSS • コンテナの価値を見極め目的を見失わないようにしよう • Dockerがある程度理解できたら周辺知識も学習しよう
終わり