Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Building Minimal Docker Containers
Search
Gavin Zhou
February 22, 2017
Technology
1.4k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Building Minimal Docker Containers
Gavin Zhou
February 22, 2017
More Decks by Gavin Zhou
See All by Gavin Zhou
Prometheus Operator
gavinzhou
3
1.3k
Other ingress voyager
gavinzhou
0
210
Multiple Ingress on GKE
gavinzhou
0
1.9k
kubernetes chatops
gavinzhou
0
630
Other Decks in Technology
See All in Technology
CTO Night|NotionのAIエージェントとFDE
kzkhykw1991
0
300
AIにシークレットを見せない、WSL2で安全な開発環境
yazm
0
330
LLM Content Moderationを支える評価・改善ループの実践
suikabar
2
260
Browser Spec: Testing Hotwire with Ruby
takahashim
1
150
初海外で注意すべきこと12選!!!安全快適なre:invent生活にするために
yuuuuuuu168
1
190
Turning Repos into the Product Second Brain with an LLM Wiki
linedevth
0
130
20261017福岡devIO 「AIは"良いダッシュボード"を作れるか?
jtakeda
0
220
Classmethod Company Deck
satoshi7
1
790
NDIでApple Vision Proにリアルタイム映像送信
jyouryuusui
0
140
AI駆動で「他アプリの音を加工できる」アプリを作った
satomasahiro2005
0
190
1つのリクエストを追って理解する - llm-dのP/D分離
akhino
1
180
データエンジニアの次の戦場は "プロセスエンジニアリング"
sansantech
PRO
1
140
Featured
See All Featured
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.9k
Context Engineering - Making Every Token Count
addyosmani
9
1.2k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
640
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
290
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
Rails Girls Zürich Keynote
gr2m
96
14k
[SF Ruby Conf 2025] Rails X
palkan
3
1.5k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.8k
Music & Morning Musume
bryan
48
7.4k
GraphQLとの向き合い方2022年版
quramy
50
15k
Transcript
Building Minimal Docker Containers Orangesys Inc.
$Who am I Orangesys Inc. Tachibana Shuji Twitter @yepn Running
Orangesys Inc. SaaS監視システム https://orangesys.io @orangesysio
None
None
Orangesys • All in docker • Kubernetes on GKE •
OpsDev -> NoOps Architecture & Stack
Architecture: Orangesys > Kubernetes Apigateway Namespace Cloud Load Balancing Standard
Devices HTTPS Browser Client Production Namespace Kube-system Namespace Tiller Replication Controller Grafana Container Engine Replication Controller Influxdb Container Engine Replication Controller Corporate Site App Engine Autoscaling Orangesys Firebase Autoscaling Monitoring Namespace Prometheus RC Influxdb RC Grafana RC Opsbot Namespace Kubebot RC K8s-event RC Stripe Server Api Container Engine Replication Controller PostgresSQL Container Engine Replication Controller MariaDb Container Engine Replication Controller Nginx Container Engine Replication Controller Traefik Container Engine Replication Controller Server Telegraf Ingress Container Engine Replication Controller Kong ApiGateway Container Engine Replication Controller Kubenetes API Replication Controller SSL Cert Bot Replication Controller Orange Api Container Engine Replication Controller
Technology Stack
Agenda • Docker images size • Docker images security
None
Coreos clair Security data Sources
Layers
Topic Alpineでdocker image Goalngなら、scratchベースでdocker imageを作る Layersを減らすと、build時間が短縮
Alpine base image base size 2MBのAlpineでdocker imageを作る、 ただし LIBCがMUSL LIBCとなりましたが、OS周りの依頼関係
ex) Not resolving using search domain <service-name>.<namespace-name>.svc.cluster.local https://github.com/gliderlabs/docker-alpine/issues/8
Scratch base image Goalngなら、scratchベースでdocker imageを作る ただし コンテナから外部へhttps通信時、ca証明書の実装が必要となります。 FROM scratch ADD
ca-certificates.crt /etc/ssl/certs/ ADD main / CMD ["/main"]
Layers Layersを減らすと、build時間が短縮 ただし、LIBCを使う場合は、既存のdocker imagesを利用した方が良いかも
参考 https://github.com/orangesys https://stackshare.io/orangesys-inc https://hub.docker.com/u/orangesys/dashboard/