> Markdown version of [/videos/1600-develop-on-windows-deploy-on-red-hat-enterprise-linux](https://www.wearedevelopers.com/videos/1600-develop-on-windows-deploy-on-red-hat-enterprise-linux). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Develop on Windows, Deploy on Red Hat Enterprise Linux End the "it works on my machine" headache. Stop fighting environment drift. Learn to sync local Windows development via WSL directly with RHEL production environments. - **Speakers:** [Ben Breard](https://www.wearedevelopers.com/@ben-breard) - **Event:** World Congress 2025 - **Published:** August 20, 2025 - **Duration:** 14:00 - **URL:** https://www.wearedevelopers.com/videos/1600-develop-on-windows-deploy-on-red-hat-enterprise-linux ## Summary Addressing the notorious "it works on my machine" problem, the core narrative focuses on eliminating development environment drift by aligning local Windows setups with Red Hat Enterprise Linux (RHEL) production environments. The modern development ecosystem encourages container-driven baselining to maintain operating system consistency from testing to deployment. A standout component of this strategy is using Red Hat's Image Mode, powered by Bootc, which manages the entire OS node as a Linux container directly from continuous integration pipelines, alongside fully redistributable Universal Base Images (UBI). To bridge the gap for engineers running Windows, teams can leverage the Windows Subsystem for Linux (WSL) alongside Red Hat's Image Builder. A newly updated Red Hat developer subscription—now offering free, commercial-friendly terms for individuals—enables users to generate customized RHEL 10 profiles directly from their browser console. The Image Builder platform provides sensible framework defaults while allowing fine-grained remote configuration, enabling teams to provision necessary accounts and push automated OS footprint updates across diverse cloud zones via an integration API. The transition workflow from cloud generation to local system is highly automatable. Provisioning a development environment involves downloading a custom tarball build, installing WSL without a pre-configured distribution, and using the `wsl --import` command to initialize the tailored Linux subsystem. Registering a non-root default user profile organically during this process is highlighted as a basic capability but a critical security practice. Ultimately, replacing rigid virtual machines with this persistent, fully integrated WSL workflow allows developers to sync accurate custom builds across the organizational fleet, fundamentally reducing the friction between local compilation and final deployment. **Keywords:** environment drift mitigation, WSL configuration techniques, RHEL image development, red hat image builder workflows, podman desktop setups, UBI distribution capabilities, bootc container nodes, pipeline-driven OS configuration, WSL userspace provisioning, non-root deployment practices, red hat developer subscription, automated image fleet syncing, tarball image deployments, local virtual machine alternatives, cross-platform container baselining ## Chapters 1. **Solving environment drift with containers and baselining** (00:00) — Environment drift causes significant deployment issues that containers and proper operating system baselining can resolve. 1. **Managing operating systems as containers with bootc** (02:27) — Technologies like Podman and universal base images enable deploying entire operating systems as containers through standard pipelines. 1. **Accessing the free commercial-friendly developer subscription** (04:34) — A self-service subscription model provides full access to enterprise Linux environments directly for individual developers. 1. **Running persistent Linux environments directly on Windows** (05:44) — The Windows Subsystem for Linux offers a native, persistent execution environment for Linux tools on Windows hardware. 1. **Automating system builds with Image Builder** (06:36) — Refreshing custom footprints systematically across hardware and hyperscalers ensures consistent environments at any update cadence. 1. **Configuring unprivileged user environments in the console** (07:47) — Generating a blueprint with sensible defaults and a custom non-root user provides a secure base tarball. 1. **Importing custom distribution tarballs into WSL** (09:49) — The command line interface allows fetching, extracting, and importing custom distribution archives securely into the local subsystem. 1. **Reviewing the complete deployment workflow steps** (12:12) — Synthesizing the steps from subscription to automated build and subsystem import establishes a smooth local development pipeline. ## Related Moments - [Navigating local development environments with WSL and Apple Silicon](https://www.wearedevelopers.com/videos/1730-wearedevelopers-live-accessibility-isn-t-magic-longevity-devrel-in-times-of-ai-and-more) (from "WeAreDevelopers LIVE - Accessibility isn't magic, Longevity, Devrel in times of AI and more") - [Evolving from application containers to bootable systems](https://www.wearedevelopers.com/videos/1593-bootable-ai-containers-with-podman-desktop) (from "Bootable AI Containers with Podman Desktop") - [Building and updating system images with Bootc](https://www.wearedevelopers.com/videos/1593-bootable-ai-containers-with-podman-desktop) (from "Bootable AI Containers with Podman Desktop") - [Building custom operating systems via standard containerfile configurations](https://www.wearedevelopers.com/videos/1610-enterprise-linux-as-container-images) (from "Enterprise Linux as Container Images") - [Applying standard container workflows to physical infrastructure](https://www.wearedevelopers.com/videos/1610-enterprise-linux-as-container-images) (from "Enterprise Linux as Container Images") - [Automating local workspaces with Microsoft dev containers](https://www.wearedevelopers.com/videos/1144-a-deep-dive-into-development-environment-configuration-standards) (from "A Deep Dive into Development Environment Configuration Standards") ## Related Articles - [Building AI Solutions with Rust and Docker](https://www.wearedevelopers.com/magazine/494-building-ai-solutions-with-rust-and-docker) - [Dev Digest 183: End of Win10, a Bus Factor of 0, "Call" Explained](https://www.wearedevelopers.com/magazine/624-dev-digest-183-end-of-win10-a-bus-factor-of-0-call-explained) - [Dev Digest 100 - new look and more content](https://www.wearedevelopers.com/magazine/379-dev-digest-100-new-look-and-more-content) - [Dev Digest 172: CODE100 is back, Linux Containers & PHP in Node!](https://www.wearedevelopers.com/magazine/597-dev-digest-172-code100-is-back-linux-containers-php-in-node) ## Related Jobs - [Platform Engineer (DevOps)](https://www.wearedevelopers.com/jobs/48264-platform-engineer-devops) at **WDW Consulting GmbH** - [Cloud Foundations Team](https://www.wearedevelopers.com/jobs/ext/1483289-cloud-foundations-team) at **GitHub** - [Developer Embedded Linux](https://www.wearedevelopers.com/jobs/ext/381560-developer-embedded-linux) at **ZEISS Group** - [Developer Embedded Linux](https://www.wearedevelopers.com/jobs/ext/1543045-developer-embedded-linux) at **ZEISS Group** - [Cloud Engineer](https://www.wearedevelopers.com/jobs/ext/652417-cloud-engineer) at **BWI GmbH** - [Senior Software Engineer, Enterprise Products](https://www.wearedevelopers.com/jobs/ext/1841248-senior-software-engineer-enterprise-products) at **GitHub**