20200129_ビヨンド勉強会__22_関西の駆け出しDocker職人に贈るコンテナサマリー.pdf
by
nezumisannn
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
関西の駆け出しDocker職人に 贈るコンテナサマリー ビヨンド勉強会 #22 2020/01/29 株式会社ビヨンド 寺岡 佑樹
Slide 2
Slide 2 text
自己紹介 resource “my_profile” “nezumisannn” { name = “Yuki.Teraoka” nickname = “ねずみさん家。” company = “beyond” job = “Site Reliability Engineer” twitter = “@yktr_sre” skills = [“terraform”,”packer”] }
Slide 3
Slide 3 text
このセッションで話すこと ● Dockerとコンテナの概要 ○ 使ったことがないから使ってみようへシフト ● コンテナマインドセット ○ 使い始めるときに必要な考え方
Slide 4
Slide 4 text
このセッションで話さないこと ● Dockerの使い方・コマンド ○ 次のセッションにご期待ください
Slide 5
Slide 5 text
Docker is 何?
Slide 6
Slide 6 text
このクジラの名前は? ↑ Dockerと呼ぶらしい
Slide 7
Slide 7 text
Docker is 何? ● コンテナと呼ばれる仮想環境を提供するOSS ● 開発はdotCloud社(現Docker社) ● 仮想化という部分では同じだがハイパーバイザー型とは異なる ←上に乗ってるこれ
Slide 8
Slide 8 text
コンテナ is 何? ● アプリケーション及び依存関係をパッケージ化して抽象化したもの ● 複数のコンテナを同じマシン上で実行してOSのカーネルを共有できる ● 各コンテナはユーザー空間で独立したプロセスとして実行される
Slide 9
Slide 9 text
つまり? コンテナ型 ハイパーバイザー型 https://www.docker.com/resources/what-container
Slide 10
Slide 10 text
Dockerが注目される理由
Slide 11
Slide 11 text
Dockerが注目される理由 ● コンテナ管理のための優れた機能が実装されている ○ コンテナに必要な要素を イメージ化 (Docker Image) ○ イメージの共有 (DockerHub) ○ コードによるコンテナの実行 (Dockerfile / Docker Compose) Write Build and Share Run なぜコンテナ化するのか
Slide 12
Slide 12 text
コンテナの価値
Slide 13
Slide 13 text
コンテナの価値 ● Agility (敏捷性) ● Portability (可搬性)
Slide 14
Slide 14 text
Agility ● コンテナはゲストOSがなくホストOSのカーネルを共有している ● オーバーヘッドが少なく起動はもちろんビルドやデプロイも早い ● 要求に応じて必要なリソースを迅速に展開できる
Slide 15
Slide 15 text
Portability ● イメージの仕様をDockerfileでコード化できる ● コンテナイメージを用意すればどの環境でも同様に実行できる ● アプリケーションが動作するための環境の再現性が非常に高い
Slide 16
Slide 16 text
コンテナ化の罠
Slide 17
Slide 17 text
コンテナ化の罠 ● アプリケーションをコンテナ化することが目的になっていませんか? ● コンテナ化は手段であって目的ではない ● それコンテナにする必要あんの?は絶対言われる
Slide 18
Slide 18 text
コンテナ化の目的
Slide 19
Slide 19 text
コンテナ化の目的 ● アプリケーションを迅速に展開して開発スピードを上げること ● 特定の環境への依存を減らして運用負荷を下げていくこと ● クラウドネイティブなアプリケーションの開発 ユーザーエクスペリエンスの向上
Slide 20
Slide 20 text
クラウドネイティブ
Slide 21
Slide 21 text
クラウドネイティブ ● 回復性・管理力、及び可観測性のある疎結合システムと、堅牢な自動化を組み合 わせることにより、システム変更を最小限の労力で、頻繁かつ予測通りに行う設計 思想 書籍:Kubernetes実践ガイドより引用 ユーザーが期待するアプリケーションを スピードや品質といったビジネス価値として提供すること
Slide 22
Slide 22 text
つまり? ● Dockerを活かせばクラウドネイティブにおける価値を提供できる ○ リードタイム(コードのコミットから本番稼働までの所要時間 )の削減 ○ デプロイ頻度の増加 ○ MTTR(平均修復時間)の短縮 ○ 変更失敗率の低減 4つをまとめてデリバリーパフォーマンスと呼ばれる
Slide 23
Slide 23 text
クラウドネイティブの構成要素 ● アプリケーションのアーキテクチャ ○ マイクロサービス ● コンテナオーケストレーション ○ Kubernetes ● Dockerと合わせて学習する必要がある Kubernetes is 何?を語るために必要な基礎知識 20191120_ビヨンド勉強会__21_Kubernetes_is_何_を語るために必要な基礎知識 .pdf
Slide 24
Slide 24 text
まとめ
Slide 25
Slide 25 text
まとめ ● Dockerはコンテナと呼ばれる仮想環境を提供するOSS ● コンテナの価値を見極め目的を見失わないようにしよう ● Dockerがある程度理解できたら周辺知識も学習しよう
Slide 26
Slide 26 text
終わり