Rkt Container Engine

16

Click here to load reader

Transcript of Rkt Container Engine

Page 1: Rkt Container Engine

Rocket It

Page 2: Rkt Container Engine

Agenda

○ Linux Container○ App container specification○ Rkt○ Demo with Golang app

Page 3: Rkt Container Engine

Le Dong Thuc - 1990- Part-time SSS

- Hardware Dev

- Golang - 2015

- Swimming

- Running

- Foods

Page 4: Rkt Container Engine

Linux Container

Page 5: Rkt Container Engine

History

1979 - Chroot2000 - FreeBSD Jails2001 - Linux VServer2004 - Solaris Containers2005 - OpenVZ2006 - Process Containers (Google)

Page 6: Rkt Container Engine

2008 - LXC2011 - Warden (CloudFoundry)2013 - LMCTFY (Google)2013 - Docker2014 - Oh yeah… Rocket it

History

Page 7: Rkt Container Engine

App container specification (APPC)

Page 8: Rkt Container Engine

“APPC is an open specification that defines several aspects of how to

run applications in containers

Page 9: Rkt Container Engine

APPC defines

○ Image format○ Runtime environment ○ Discovery protocol

Page 10: Rkt Container Engine

Image format

○ Called ACI (application container image)○ Contains:

□ Files need to run application□ Image Manifest

○ Can created by acbuild, actool, goaci, docker2aci

Page 11: Rkt Container Engine

Pod

○ Grouping of one or more app images (ACIs), with some additional metadata optionally applied to the pod

○ The basic unit of execution

Page 12: Rkt Container Engine

Pod

Page 13: Rkt Container Engine

Where’s rkt?

Page 14: Rkt Container Engine

○ Rkt is container runtime○ Portable image format○ Works with init systems (systemd, upstart)○ Rkt runs containers as un-privileged users

Rkt

Page 15: Rkt Container Engine

Install Rkt(demo)

https://github.com/coreos/rkt/releases