Have you heard about rootless containers, but don't really know what they are? Do you wonder what prevents processes in one container from interacting with processes in another container? Would you like to learn how to scan container images with OpenSCAP?
If you answered yes to any of these questions, I've recently published a series of videos on containers and Podman that might help.
Rootless containers using Podman
Watch two videos covering running containers unprivileged, or "rootless" using Podman.
The first video is an overview of the options you have when choosing which user account to use to run Podman and which account to run processes as within container images. The video includes a demo of these various options in action.
The second video dives deep into how user namespaces work in rootless Podman, and demos the following topics:
- Run a container with rootless Podman.
- View user namespaces with the
lsns
command. - Use the
/etc/subuid
file, which defines subordinate UID ranges. - Use the
/proc uid_map
file, which shows the UID map for processes. - Calculate the UID number that a process runs as on the host.
- Use the
podman top
command to view the user mapping between the container and the host. - Use the
podman unshare
command to run a command within a container user namespace.
Overview of PID namespaces
The next video, Overview of How Containers Use PID Namespaces to Provide Process Isolation, takes an in-depth look at how PID namespaces work. Namespaces, including PID namespaces, are one of the key technologies that enable containers to run in isolated environments.
PID namespaces also allow containers to have the same PID number running in each container (this is how every container running on a system can have their own PID #1). PID namespaces map the PID numbers between the container and the host, so a process running in your container will have a different PID number from the container's point of view versus the host's point of view, which is explained in the video.
After watching this video, you should have a solid understanding of how PID namespaces work and the benefits they provide.
Security compliance by scanning container images with OpenSCAP
The last video is named Scanning Containers for Vulnerabilities on RHEL 8.2 With OpenSCAP and Podman. In this video, I cover the new feature in RHEL 8.2 that allows container images to be scanned with OpenSCAP using the oscap-podman
command. This video covers the following topics:
- Scan container images for vulnerabilities with the
oscap-podman
command. - Assess a container image's security compliance with the PCI-DSS baseline by using the
oscap-podman
command. - Use Buildah to create a new image with one of the OpenSCAP findings remediated.
Running a container inside a container (Podman in Podman)
This video covers an overview of Podman in Podman, or in other words, running a container within a container. This is a technology preview feature in Red Hat Enterprise Linux (RHEL) 8.3.
The video covers an overview of:
- From the RHEL 8.3 host, starting a container using the registry.redhat.io/rhel8/
podman container image (with the --privileged option) - Within that container, building a new container image using podman build
- Running a container (while in a container) using the newly created container image (Podman in Podman)
Please note that Podman in Podman functionality is currently only available when starting the container as root.
Conclusion
I hope you find these videos useful and educational. I want to make several more Red Hat Container Tools-related videos in the future, so keep an eye on the Enable Sysadmin blog and the Red Hat Videos YouTube channel!
[ Free book: Building modern apps with Linux containers. ]
About the author
Brian Smith is a product manager at Red Hat focused on RHEL automation and management. He has been at Red Hat since 2018, previously working with public sector customers as a technical account manager (TAM).
Browse by channel
Automation
The latest on IT automation for tech, teams, and environments
Artificial intelligence
Updates on the platforms that free customers to run AI workloads anywhere
Open hybrid cloud
Explore how we build a more flexible future with hybrid cloud
Security
The latest on how we reduce risks across environments and technologies
Edge computing
Updates on the platforms that simplify operations at the edge
Infrastructure
The latest on the world’s leading enterprise Linux platform
Applications
Inside our solutions to the toughest application challenges
Original shows
Entertaining stories from the makers and leaders in enterprise tech
Products
- Red Hat Enterprise Linux
- Red Hat OpenShift
- Red Hat Ansible Automation Platform
- Cloud services
- See all products
Tools
- Training and certification
- My account
- Customer support
- Developer resources
- Find a partner
- Red Hat Ecosystem Catalog
- Red Hat value calculator
- Documentation
Try, buy, & sell
Communicate
About Red Hat
We’re the world’s leading provider of enterprise open source solutions—including Linux, cloud, container, and Kubernetes. We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.
Select a language
Red Hat legal and privacy links
- About Red Hat
- Jobs
- Events
- Locations
- Contact Red Hat
- Red Hat Blog
- Diversity, equity, and inclusion
- Cool Stuff Store
- Red Hat Summit