Project

General

Profile

DockerIntegration » History » Revision 4

Revision 3 (Kyle Baker, 12/03/2014 02:10 PM) → Revision 4/6 (Kyle Baker, 12/15/2014 10:16 AM)

h1. Docker Integration 

 h2. Summary 

 Satellite 6.1 will serve as an on premise registry for customers. Docker images, which are available as part of the Red Hat Subscription, can be mirrored in the same way that RPMs and Puppet Modules are mirrored. Customers will also be able to upload their own images using the command line. Once in Satellite, they can be added to content views and promoted like any content. Once promoted, Satellite 6.1 will be able to provision containers onto machines using the docker daemon. Once provisioned, the containers will be able to access rpm content from the Satellite using the hosts subscriptions. These features support docker containers as part of the Application Lifecycle which was introduced with RPMS in 6.0.  

 This space is expected to change dramatically, to Satellite 6.1 should support a simple lifecycle. Future versions may support kubernetes and other more complex lifecycles. 

 h2. Targeted Release 

 Foreman 1.9 / Katello 2.3 

 h2. Trackers 

 https://bugzilla.redhat.com/show_bug.cgi?id=1043927 

 h2. Targeted Persona 

 [[Personas-SystemEngineer| Samuel - System Engineer]] 
 Engineer  
 Developer Operations 

 h2. Status 

 h3. User Stories 

 Owner - David Caplan 
 Status - In Progress 
 Expected Delivery - TBD 
 Blockers - None 

 h3. Requirements  

 Owner - Mike Mccune / David Caplan 
 Status - In Progress 
 Expected Delivery - TBD 
 Blockers    - None 

 h3. Wireframes 

 Owner - Kyle Baker 
 Status - Not Started 
 Blockers - Waiting on User Stories & Requirements 
 Last updated TBD - -- 

 h3. Development Stories 

 Owner - Foreman (TBD) Katello (TBD) 
 Status - Not Started 
 Expected Delivery - TBD 
 Blockers - Waiting on Wireframes 

 h2. Documentation 

 h3. User Stories 

 * Please include a story describing how the user would transverse this feature including the workflow. This story ideally would include what their actions would be before and after completion of the task. 
 
 h3. Requirements 

 * Sync Docker images from the CDN/RedHat Docker Registry 
 ** Subscriptions are a nice to have based on discussions with RCM. 
 * Sync Docker images from Docker Hub 
 * Create local registry without subscriptions 
 ** http://projects.theforeman.org/issues/7124 
 ** http://projects.theforeman.org/issues/7127 
 * Promote docker images through the environments 
 ** Subscriptions generated for machines should support the org,environment, and content view namespacing in the same way that yum repos. 
 * Support docker pull and docker build commands against satellite. 
 ** Docker push will not be supported 
 ** http://projects.theforeman.org/issues/7126 
 * Integrate Crane into the Smart Proxy so that it is part of the Capsule. 
 ** Installer should support installing and configuring crane  
 * Install and launch a docker image on a rhel machine or an atomic machine. 
 * List the instances which have been launched or synced down 
 ** Listing should include information from the metadata 
 * Update hammer to expose these features 
 * Content Search should be consistent with docker images 
 * From the UI, I should be able to view all tags for each repository or imager. 
 * Docker images should be supported via the Disconnected Utility. 
 * It would be nice to be able to deliver / install docker as a separable unit. 
 * It may be a requirement to debrand the term “doker” in the downstream product. 

 h3. Additional Information 

 * Upstream Tracker: http://projects.theforeman.org/issues/7125 
 * Ju Lims Slides: See the Systems Administrator top 5: https://docs.google.com/a/redhat.com/presentation/d/1xfvtTFinmyOFqj_p1MdoiuR0vQRD5TxyX7lF-NyAQbQ/edit#slide=id.g377291810_029 
 * Ju Lims General Requirements: https://docs.google.com/a/redhat.com/spreadsheets/d/17DXDtsDOKfo2yBQbEvv1jZvKmAchSmBXsQxfctJI3JI/edit#gid=448766426 

 h4. Questions 

 # Is each environment a unique “registry”, or is there one registry?  
 # Are there “docker” permissions? 
 # How does Kubernetes for into this? 

 h4. Impacted 

 # Pulp: Need to install Crane 
 # Candlepin: Subscriptions should unlock docker images 
 # Katello: Content syncing, showing hosts as green 
 # Foreman: Provision docker container.