COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat...
Transcript of COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat...
![Page 1: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/1.jpg)
COMMON CONTAINERSTANDARDS:PAST, PRESENT & FUTURE
Vincent Batts @vbatts
![Page 2: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/2.jpg)
$> finger $(whoami)Login: vbatts Name: Vincent BattsDirectory: /home/vbatts Shell: /bin/bashSuch mail.Plan:OHMAN$> id -Gndevel opencontainers docker appc redhat golang slackware
![Page 3: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/3.jpg)
SO,WHY, CONTAINERS?
Single ApplicationFull System
But Not a VMExcept Maybe a VM
Pods of applicationsLabels of services
Non-root
Non-root Full systems?Desktop Applications
![Page 4: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/4.jpg)
But Wait,What does "container" mean to you?
![Page 5: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/5.jpg)
STANDARDS!
Standard
/ˈstandəd/
noun
something used as a measure, norm, or model in comparativeevaluations
![Page 6: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/6.jpg)
STANDARDS!Areas to Standardize:
Packaging
Runtime
Networking
Cloud
![Page 7: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/7.jpg)
PAST
![Page 8: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/8.jpg)
PACKAGES
tar archives
*.deb or *.rpm
jar
gem
pod
module
egg
zip archives
tar archives
tar archives
tar archives
PAST
*.dmg
*.msi
![Page 9: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/9.jpg)
RUNTIMEPAST
binaries?
ELF binaries? WAR files
SysVinit
shell scripts
so many shell scripts
![Page 10: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/10.jpg)
NETWORKPAST
Hardware
shell scripts + telnet
custom
SDN
![Page 11: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/11.jpg)
CLOUDPAST
REST
SOAP
APIs of APIs
SOA
![Page 12: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/12.jpg)
PRESENTRUNTIME
L X C
2 0 0 8l x c s p e c i f c c o n fig
D o c k e r2 0 1 3D o c k e r s p e c i f c c o n fig a n d A P I s
![Page 13: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/13.jpg)
PRESENTRUNTIME
A p p l i c a t i o n C o n t a i n e r S p e c ( )g i t h u b . c o m / a p p c / s p e c
D e c e m b e r 2 0 1 4
A p p C o n t a i n e r E x e c u t o r ( A C E )S e v e r a l i m p l e m e n t a t i o n s , w i t h r k t a s t h e fla g s h i p
S p e c i fic a t i o n
![Page 14: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/14.jpg)
PRESENTRUNTIME
O p e n C o n t a i n e r R u n t i m e - S p e c( )g i t h u b . c o m / o p e n c o n t a i n e r s / r u n t i m e - s p e c
J u n e 2 0 1 5
S e v e r a l I m p l e m e n t a t i o n s , w i t h r u n c a s fla g s h i pS p e c i fic a t i o n
C u r r e n t l y v 1 . 0 . 0 - r c 2
![Page 15: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/15.jpg)
PRESENTNETWORK
C o n t a i n e r N e t w o r k i n g I n t e r f a c e
( )C N I - g i t h u b . c o m / c o n t a i n e r n e t w o r k i n g / c n i
U s e d b y R K T , k u b e r n e t e s , O p e n S h i f t , K u r m a , C l o u dF o u n d r y , R a n c h e r O S , u s a b l e w i t h r u n C , a n d m o r e
S i m p l e t o i n t e g r a t e w i t h a p r o c e s s b a s e d w o r k flo w
D e c e m b e r 2 0 1 4S p e c i fic a t i o n a n d L i b r a r y
![Page 16: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/16.jpg)
PRESENTNETWORK
C o n t a i n e r N e t w o r k M o d e l
( )C N M - D o c k e r l i b n e t w o r k
U s e d b y D o c k e r E n g i n eH a r d t o i n t e g r a t e i n t o e x i s t i n g s y s t e mA p r i l 2 0 1 5
![Page 17: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/17.jpg)
PRESENTPACKAGING
D o c k e r s p e c i fic f o r m a t
D o c k e r I m a g e
T i g h t c o u p l i n g w i t h d a e m o n v e r s i o nS i g n i n g r e q u i r e s D o c k e r n o t a r y i n t e g r a t i o nI m a g e n a m i n g i s D o c k e r s p e c i fic a n d b o u n d t o r e g i s t r i e s
![Page 18: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/18.jpg)
PRESENTPACKAGING
D e c e m b e r 2 0 1 4
A n u m b e r o f i n d e p e n d e n t t o o l i n g
A p p l i c a t i o n C o n t a i n e r S p e c ( )g i t h u b . c o m / a p p c / s p e c
A p p C o n t a i n e r I m a g e ( A C I )
A d d r e s s e s F u l l y - Q u a l i fie d - N a m i n g , i m a g e d i s c o v e r y ,s i g n i n g , c o n t e n t a d d r e s s i b i l i t y , a n d v e r s i o n e ds c h e m a
![Page 19: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/19.jpg)
PRESENTPACKAGING
A p r i l 2 0 1 6P u l l e d f r o m D o c k e r - 1 . 1 0 a n d R e g i s t r y v 2 f o r m a tC o n t e n t a d d r e s s i b i l i t y
O p e n C o n t a i n e r I m a g e - S p e c( )g i t h u b . c o m / o p e n c o n t a i n e r s / i m a g e - s p e c
S i g n a b l e . P o s s i b i l i t y t o h a v e n a m i n g a n d d i s c o v e r y .C u r r e n l y r e l e a s i n g v 1 . 0 . 0 - r c 1G a i n i n g s u p p o r t f r o m r k t , fla t p a k , s k o p e o , c r i - o a n dm o r e
![Page 20: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/20.jpg)
PRESENTCLOUD
C l o u d N a t i v e C o m p u t i n g F o u n d a t i o n( )h t t p s : / / c n c f . i o
K u b e r n e t e s o r c h e s t r a t i o n d o n a t e d b y G o o g l eP r o m e t h e u s m o n i t o r i n g d o n a t e d
![Page 21: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/21.jpg)
Why More Standards?!
Really great question. Thought you might ask ...
The package wars of deb vs rpm set back the broad adoption of Linux
xkcd.com/927
![Page 22: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/22.jpg)
FUTURE
Continued adoption
Verification and certification of integrations/implemenations
Tooling to further distribution and discovery
![Page 23: COMMON CONTAINER STANDARDS › sites › events › ...devel opencontainers docker appc redhat golang slackware. SO, WHY, CONTAINERS? Single Application Full System But Not a VM Except](https://reader035.fdocuments.us/reader035/viewer/2022070816/5f0f5e5b7e708231d443d0a0/html5/thumbnails/23.jpg)
C a l l t o A c t i o n !
Define your use-cases first
Ensure your container integration touchpoint stay generic,
to avoid lock-in to a particular platform.
Get involved in the conversations
PoC tooling for your integration