Project

General

Profile

Docker Integration

Summary

Katello/Foreman 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 Katello/Foreman, they can be added to content views and promoted like any content. Once promoted, Katello/Foreman 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 Katello/Foreman 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 Katello/Foreman should support a simple lifecycle. Future versions may support kubernetes and other more complex lifecycles.

Targeted Release

Foreman 1.9 / Katello 2.3

Targeted Persona

Samuel - System Engineer
Developer Operations

Status

Use Cases

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

Requirements

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

Wireframes

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

Development Stories

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

Documentation

Bugs/RFEs

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

Use Cases

  • 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.

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
  • 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 Katello/Foreman.
  • 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.

Additional Information

Questions

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

Impacted

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