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職人に贈るコンテナサマリー...
Search
nezumisannn
January 29, 2020
Technology
920
0
Share
20200129_ビヨンド勉強会__22_関西の駆け出しDocker職人に贈るコンテナサマリー.pdf
nezumisannn
January 29, 2020
More Decks by nezumisannn
See All by nezumisannn
20250930_Conohaウェビナー_生成AI_Terraform_ConoHa_VPSサーバー_セットアップ入門編
nezumisannn
1
36
20250723_Conohaウェビナー_高騰する海外クラウド費用を劇的カット_サーバーコスト最適化のポイント解説と成功事例のご紹介.pdf
nezumisannn
0
54
20241204_ビヨンド勉強会_44_AWS_Service_Catalogを利用したIaCのテンプレート化とTerraformによるデプロイ.pdf
nezumisannn
0
390
20240828_ビヨンド勉強会_42_EKS_on_FargateでWebサービスを公開するために覚えておきたいこと.pdf
nezumisannn
0
110
20240530_ビヨンド勉強会#41_ビヨンドのエンジニア新卒研修における取り組み
nezumisannn
0
130
20230511_AWSにおけるコンテナサービスの選択とIaC実装例.pdf
nezumisannn
0
1.4k
リーダーになって1年経過して_取り組んできたことと大事にしている考え方_の裏側_.pdf
nezumisannn
0
91
20211118_GKEにおける高負荷時のPodとWorker_Nodeの挙動について.pdf
nezumisannn
0
180
20211014_Alibaba_Cloud_Container_Service_for_KubernetesにおけるServerless_Kubernetesの概要とManaged_Kubernetesとの違い.pdf
nezumisannn
0
110
Other Decks in Technology
See All in Technology
新アーキテクチャ「TiDB X」解説とDedicated比較 TiDB Cloud Premiumのゲーム運用活用を検証
staffrecruiter
0
110
MIERUNE JCT 発表資料「宇宙から伊能忠敬ごっこ」
syuchimu
0
170
ITエンジニアを取り巻く環境とキャリアパス / A career path for Japanese IT engineers
takatama
4
1.8k
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
50k
はじめてのDatadog
kairim0
0
270
Gradle×GitHub_ActionsでCI時間を約50%短縮 ジョブ分割の設計と落とし穴 / Cutting CI Time by ~50% with Gradle and GitHub Actions: Job-Splitting Design and Pitfalls
takatty
0
620
もりもり新機能を一挙紹介! AgentCoreに入門して、AWS上にAIエージェントを構築しよう
minorun365
PRO
6
750
「嘘をつくテスト」の失敗例から学ぶ 良いテストコード #frontend_phpcon_do
asumikam
0
210
Platform Engineering as a Product: Criteria for Improvement and Multi-Tenant Design
kumorn5s
0
490
AI-DLCを活用した高品質・安全なAI駆動開発実践 / AI Driven Development with AI-DLC
yoshidashingo
0
130
Chart.js が簡単に使えるようになっていたので OGP 画像生成に使った話
kamekyame
0
150
AIプラットフォームを運用し続けるための可観測性
tanimuyk
4
1.1k
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
440
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Embracing the Ebb and Flow
colly
88
5.1k
Color Theory Basics | Prateek | Gurzu
gurzu
0
340
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
First, design no harm
axbom
PRO
2
1.2k
Making the Leap to Tech Lead
cromwellryan
135
9.9k
Practical Orchestrator
shlominoach
191
11k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
210
Unsuck your backbone
ammeep
672
58k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
130
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がある程度理解できたら周辺知識も学習しよう
終わり