Skip to main content
Redhat Developers  Logo
  • Products

    Platforms

    • Red Hat Enterprise Linux
      Red Hat Enterprise Linux Icon
    • Red Hat AI
      Red Hat AI
    • Red Hat OpenShift
      Openshift icon
    • Red Hat Ansible Automation Platform
      Ansible icon
    • View All Red Hat Products

    Featured

    • Red Hat build of OpenJDK
    • Red Hat Developer Hub
    • Red Hat JBoss Enterprise Application Platform
    • Red Hat OpenShift Dev Spaces
    • Red Hat OpenShift Local
    • Red Hat Developer Sandbox

      Try Red Hat products and technologies without setup or configuration fees for 30 days with this shared Openshift and Kubernetes cluster.
    • Try at no cost
  • Technologies

    Featured

    • AI/ML
      AI/ML Icon
    • Linux
      Linux Icon
    • Kubernetes
      Cloud icon
    • Automation
      Automation Icon showing arrows moving in a circle around a gear
    • View All Technologies
    • Programming Languages & Frameworks

      • Java
      • Python
      • JavaScript
    • System Design & Architecture

      • Red Hat architecture and design patterns
      • Microservices
      • Event-Driven Architecture
      • Databases
    • Developer Productivity

      • Developer productivity
      • Developer Tools
      • GitOps
    • Automated Data Processing

      • AI/ML
      • Data Science
      • Apache Kafka on Kubernetes
    • Platform Engineering

      • DevOps
      • DevSecOps
      • Ansible automation for applications and services
    • Secure Development & Architectures

      • Security
      • Secure coding
  • Learn

    Featured

    • Kubernetes & Cloud Native
      Openshift icon
    • Linux
      Rhel icon
    • Automation
      Ansible cloud icon
    • AI/ML
      AI/ML Icon
    • View All Learning Resources

    E-Books

    • GitOps Cookbook
    • Podman in Action
    • Kubernetes Operators
    • The Path to GitOps
    • View All E-books

    Cheat Sheets

    • Linux Commands
    • Bash Commands
    • Git
    • systemd Commands
    • View All Cheat Sheets

    Documentation

    • Product Documentation
    • API Catalog
    • Legacy Documentation
  • Developer Sandbox

    Developer Sandbox

    • Access Red Hat’s products and technologies without setup or configuration, and start developing quicker than ever before with our new, no-cost sandbox environments.
    • Explore Developer Sandbox

    Featured Developer Sandbox activities

    • Get started with your Developer Sandbox
    • OpenShift virtualization and application modernization using the Developer Sandbox
    • Explore all Developer Sandbox activities

    Ready to start developing apps?

    • Try at no cost
  • Blog
  • Events
  • Videos

Imagine this - the life of an image

May 19, 2015
Matt (Stuempfle) Lyteson
Related topics:
LinuxContainersDevOps
Related products:
Red Hat Enterprise Linux

Share:

    Imagine this: deploy an application from code-commit to qa, validate through automated testing, and then push the same image into production with no manual intervention, no outage, no configuration changes, and with full audibility through change records. A month-and-a-half ago, we formed a tiger team and gave them less than 90 days to do it. How? Build an end-to-end CI/CD environment leveraging RHEL Atomic 7.1 as the core platform and integrating with key technologies like git, Jenkins, packer.io, in a hybrid deployment model and in accordance with our enterprise standards. Oh, and make sure we don’t care if we lose a couple of the nodes in the cluster when we’re running the application in production.

    Disruptive technology that spawns disruptive business architecture. And it all starts with imagining the life of this thing called an image.

    Why the image? Of course there’s the image that I get from the Docker registry (call it a “base” certified image); then there’s a layer on top of that where support hooks are added for security and operations teams (call it the “blessed” image that I can use in the enterprise); finally there’s the application code that is layered on top that gets deployed (the “augmented” image). Three layers and images for an application in an enterprise environment to ensure supportability and security.

    That’s fine for the containers, but what about the hosts themselves? Patch a host with zero outage. Lose a host and don’t blink an eye. The platform of RHEL Atomic built on self-healing and auto-scaling IaaS. This, of course means host images on our IaaS platform.

    At this point your head is either spinning or maybe you’re just having visions of Matryoshka dolls.

    But take ½ a step back and now imagine what happens as we update or patch these various images and require rebuilds and re-deployments. RHEL Atomic uses OSTree to update rather than a typical yum update. So we’ll need to rebuild those images each time we patch and redeploy to help avoid any outage and to have a consistent environment with traceability. When there’s a patch to a certified image, like for Red Hat JBoss EAP 6 we pull a new base image, bless it, and then kick off a new build of the augmented image and then deploy. At each of these steps we’ll want to validate what’s been built and keep track that the actions have occurred. Build, test, deploy, build test deploy, over and over again.

    In product lifecycle management there is the beginning of life, middle of life, and end of life. With the proliferation of containers and image-based deployments, these concepts are particularly germane once again. Certain actions that need to be performed at different points in the lifecycle from the birth to death.

    How did we imagine this? Take a look at the following model that illustrates all of the functions and processes that are important in how we choose to support images in our environment. This is the Image Lifecycle (with the standard, Beginning of Life, Middle of Life, and End of Life). Now we know the features and functions we need to implement irrespective of image type. This helps us to focus on the specific implementation details for each image.

    Image Lifecycle
    Image Lifecycle
    Image Lifecycle

    Why care? In enterprise environments, there are security and operational standards, traceability, and audibility requirements that certain applications must meet. Understanding how and where images intersect with these constraints and requirements helps us to leverage disruptive technology faster and drive business change.

    #guerrilla_ea

    Recent Posts

    • Kubernetes MCP server: AI-powered cluster management

    • Unlocking the power of OpenShift Service Mesh 3

    • Run DialoGPT-small on OpenShift AI for internal model testing

    • Skopeo: The unsung hero of Linux container-tools

    • Automate certificate management in OpenShift

    Red Hat Developers logo LinkedIn YouTube Twitter Facebook

    Platforms

    • Red Hat AI
    • Red Hat Enterprise Linux
    • Red Hat OpenShift
    • Red Hat Ansible Automation Platform
    • See all products

    Build

    • Developer Sandbox
    • Developer Tools
    • Interactive Tutorials
    • API Catalog

    Quicklinks

    • Learning Resources
    • E-books
    • Cheat Sheets
    • Blog
    • Events
    • Newsletter

    Communicate

    • About us
    • Contact sales
    • Find a partner
    • Report a website issue
    • Site Status Dashboard
    • Report a security problem

    RED HAT DEVELOPER

    Build here. Go anywhere.

    We serve the builders. The problem solvers who create careers with code.

    Join us if you’re a developer, software engineer, web designer, front-end designer, UX designer, computer scientist, architect, tester, product manager, project manager or team lead.

    Sign me up

    Red Hat legal and privacy links

    • About Red Hat
    • Jobs
    • Events
    • Locations
    • Contact Red Hat
    • Red Hat Blog
    • Inclusion at Red Hat
    • Cool Stuff Store
    • Red Hat Summit
    © 2025 Red Hat

    Red Hat legal and privacy links

    • Privacy statement
    • Terms of use
    • All policies and guidelines
    • Digital accessibility

    Report a website issue