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
Real World Container for GTB2020
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
nwiizo
May 15, 2020
Business
3.1k
11
Share
Real World Container for GTB2020
2020年5月19日のGTB2020のコンテナ技術の資料
https://github.com/nwiizo/2020_gtb_container_work
nwiizo
May 15, 2020
More Decks by nwiizo
See All by nwiizo
システムは「動く」だけでは足りない 実装編 - 非機能要件・分散システム・トレードオフをコードで見る
nwiizo
4
420
システムは「動く」だけでは 足りない - 非機能要件・分散システム・トレードオフの基礎
nwiizo
30
9.6k
アーキテクチャモダナイゼーションとは何か
nwiizo
17
5.2k
【社内勉強会】新年度からコーディングエージェントを使いこなす - 構造と制約で引き出すClaude Codeの実践知
nwiizo
37
19k
技術的負債の泥沼から組織を救う3つの転換点
nwiizo
9
6.9k
30分でわかるアーキテクチャモダナイゼーション
nwiizo
10
7.7k
意志を実装するアーキテクチャモダナイゼーション
nwiizo
3
4.4k
おい、テックブログを書け
nwiizo
47
20k
バイブコーディングと継続的デプロイメント
nwiizo
2
1.4k
Other Decks in Business
See All in Business
その仕事、 ブルシット・ジョブじゃない?
szkm555
0
1k
チームライク会社紹介資料 / Teamlike Introduction
teamlike
0
390
株式会社スピークバディ 会社紹介資料
speakbuddy
1
220k
supateam - DevOpsDaysTokyo 2026 投影資料
aisaac
PRO
0
290
(5枚)法人営業のキーパーソンを特定する方法 予材管理で最も重要なラインコントロール
nyattx
PRO
1
620
株式会社オーイズミピュアルズ採用資料2604
purells
0
180
データ分析をはじめよう/lets_start_data_analysis
florets1
2
960
Crisp Code inc.|わたしたちの事例 / 実績 - Works
so_kotani
0
2k
ドラクエふりかえり - ふりかえりカンファレンス2026
pinboro
1
130
【営業職】中途採用向け会社説明資料(テックファーム株式会社)
techfirm
0
720
(48枚)絶対達成新入社員研修の特徴と2つのスタイル(リアル研修とオンライン教材)
nyattx
PRO
0
200
スカイディスク採用資料
okadash0
0
170
Featured
See All Featured
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
100
Unsuck your backbone
ammeep
672
58k
Building Applications with DynamoDB
mza
96
7k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
490
Being A Developer After 40
akosma
91
590k
Prompt Engineering for Job Search
mfonobong
0
270
The Invisible Side of Design
smashingmag
302
52k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
43k
Practical Orchestrator
shlominoach
191
11k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
370
Evolving SEO for Evolving Search Engines
ryanjones
0
180
How GitHub (no longer) Works
holman
316
150k
Transcript
None
None
• • • • •
プロセスからコンテナ、そして…
None
2013年リリース!
None
• • • • • • • • • •
• •
None
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ https://employment.en-japan.com/engineerhub/entry/2019/02/05/103000 コンテナ技術入門 - 仮想化との違いを知り、要素技術を触って学ぼう
⚫ ⚫
⚫ ⚫ ⚫ ⚫
⚫ ⚫ 昨日、講義でやった(はず)
⚫ ⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫ https://github.com/cncf/toc/blob/master/DEFINITION.md 最近日本語が登場したので差し替えます. ありがとう @yokawasa さん
⚫ ⚫ ⚫ https://github.com/cncf/toc/blob/master/DEFINITION.md 最近日本語が登場したので差し替えます. ありがとう @yokawasa さん
None
… … … ⚫ ⚫ ⚫
⚫ ⚫ ⚫
⚫ Building Microservices ⚫ Production-Ready Microservices
⚫ ⚫ ⚫ マイクロサービスパターン 実践的システムデザインのためのコード解説 書籍紹介より
⚫ ⚫ ⚫ Site Reliability Engineering
https://github.com/cncf/presentations
None
27
28
None
None
プロセスからコンテナ、そして…
⚫ ⚫ ⚫ ⚫ https://www.docker.com/
⚫ ⚫ ⚫
⚫ ⚫ ⚫
⚫ ⚫
⚫
⚫ ⚫ ⚫
⚫ ⚫ https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#leverage-build-cache Leverage build cache
⚫ ⚫ https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#leverage-build-cache Leverage build cache
None
⚫ ⚫ ⚫ ⚫ ⚫
⚫ ⚫
⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫ ⚫ • •
⚫ ⚫ ⚫ ⚫
⚫ ⚫
⚫ ⚫ ⚫ ⚫ local remote
⚫ ⚫ ⚫ 最初に実行される
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ Dockerfile リファレンス https://docs.docker.com/engine/reference/builder/
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ https://docs.docker.com/develop/develop-images/dockerfile_best-practices/
Image Source and Credits: http://docker-saigon.github.io/post/Docker-Internals/
⚫ ⚫ ⚫ ⚫ ⚫ ⚫
None
分散システムもDockerも何も分からんのにKubernetesに入門するけど大丈夫ですか?
None
None
None
None
None
None
None
None
None
None
None
⚫ ⚫ ⚫ https://ai.google/research/pubs/pub43438 Large-scale cluster management at Google with
Borg
⚫ ⚫
⚫ ⚫ ⚫ ⚫ ⚫ ⚫
⚫ ⚫ replicaset.yaml
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
⚫ ⚫ ⚫ ⚫
None
None
None
None
None
None
None
None
None
None
None
⚫ ⚫
None
テンプレート containerの変更 v1 v2
テンプレート containerの変更 v1 v2
None
None
None
None
None
None
None
None
None
None
None
• • • • •
None
None
絶対に順守すべきというものではなくあくまで原則
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫
⚫ ⚫ https://12factor.net/ja/
⚫ ⚫ https://12factor.net/ja/codebase
⚫ ⚫ ⚫ https://12factor.net/ja/codebase
⚫ ⚫ ⚫ https://12factor.net/ja/dependencies
⚫ ⚫ ⚫ ⚫ ⚫ https://12factor.net/ja/config
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ https://12factor.net/ja/config
⚫ ⚫ ⚫ ⚫ 従来型のVMは全てを内包 The Twelve Factorsは疎結合
⚫ ⚫ ⚫
⚫ ⚫ ⚫
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫
⚫ ⚫ ⚫
⚫ ⚫ ⚫ https://adam.herokuapp.com/past/2011/5/9/applying_the_unix_process_model_to_web_apps/
⚫ ⚫ ⚫ https://lwn.net/Articles/191059/ Golang HTTP Server Graceful Shutdown
⚫ ⚫ ⚫ ⚫ https://lwn.net/Articles/191059/
⚫ ⚫ ⚫ ⚫ ⚫
⚫ ⚫
⚫ ⚫ 動作するきれいなコード: SeleniumConf Tokyo 2019 基調講演文字起こし+α
⚫ ⚫ ⚫ ⚫
⚫ ⚫ https://kubernetes.io/docs/concepts/cluster-administration/logging/ Logging at the node level Using a
node logging agent Streaming sidecar container Exposing logs directly from the application Sidecar container with a logging agent
⚫ ⚫ ⚫ ⚫ ⚫ ⚫
None
None
None
⚫ ⚫
⚫ ⚫
⚫ ⚫
⚫ ⚫
⚫ ⚫
⚫ ⚫ ⚫
⚫ ⚫
⚫ ⚫
⚫ ⚫ ⚫ ⚫ ⚫
https://kubernetes.io/docs/concepts/overview/components/#kube-controller-manager
• • • Garbage Collection https://kubernetes.io/docs/concepts/workloads/controllers/garbage-collection/
⚫ ⚫
⚫ ⚫ ⚫ ⚫ ⚫
None
None
None
None
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫ ⚫ ⚫ ⚫
None
None
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ IX. 廃棄容易性 https://12factor.net/ja/disposability
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/
Container Lifecycle Hooks
None
None
⚫ ⚫ ⚫ ⚫ The Gotchas of Zero-Downtime Traffic /w
Kubernetes - Leigh Capili, Weaveworks https://kccncna19.sched.com/event/Uads/the-gotchas-of-zero-downtime-traffic- w-kubernetes-leigh-capili-weaveworks
⚫ ⚫ The Gotchas of Zero-Downtime Traffic /w Kubernetes -
Leigh Capili, Weaveworks https://kccncna19.sched.com/event/Uads/the-gotchas-of-zero-downtime-traffic- w-kubernetes-leigh-capili-weaveworks @tukejonny 談
⚫ ⚫ The Gotchas of Zero-Downtime Traffic /w Kubernetes -
Leigh Capili, Weaveworks https://kccncna19.sched.com/event/Uads/the-gotchas-of-zero-downtime-traffic- w-kubernetes-leigh-capili-weaveworks
None
https://12factor.net/ja/config
⚫ ⚫ ⚫ ⚫ https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/
None
None
⚫ ⚫ ⚫ ⚫ https://kubernetes.io/docs/tasks/run-application/configure-pdb/
None
None
⚫ ⚫ ⚫ ⚫ ⚫ ⚫
None
None
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫ ⚫ ⚫ ⚫
None
None
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ Vertical Pod
Autoscaling Horizontal Pod Autoscaler
None
None
⚫ ⚫ ⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ この辺は別途説明が必要なので割愛だお
None
None
⚫ ⚫ ⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫
⚫ ⚫
⚫ ⚫
⚫ ⚫
⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫ ⚫ ⚫
None
⚫ ⚫ ⚫ ⚫
⚫ Docker/Kubernetes開発・運用のための セキュリティ実践ガイド
None
None
⚫ ⚫ ⚫ ⚫ ⚫
None
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫
None