Open-source News

Experiment with containers and pods on your own computer

opensource.com - Thu, 05/05/2022 - 15:00
Experiment with containers and pods on your own computer Seth Kenlon Thu, 05/05/2022 - 03:00 Register or Login to like Register or Login to like

In the TV show Battlestar Galactica, the titular mega-ship didn't actually do a whole lot. It served as a stalwart haven for its crew, a central point of contact for strategy and orchestration, and a safe place for resource management. However, the Caprican Vipers, one-person self-contained space vessels, went out to deal with evil Cylons and other space-borne dangers. They never just send one or two Vipers out, either. They sent lots of them. Many redundant ships with essentially the same capabilities and purpose, but thanks to their great agility and number, they always managed to handle whatever problem threatened the Battlestar each week.

If you think you're sensing a developing analogy, you're right. The modern "cloud" is big and hulking, an amalgamation of lots of infrastructure spread over a great distance. It has great power, but you'd be wasting much of its capability if you treated it like a regular computer. When you want to handle lots of data from millions of input sources, it's actually more efficient to bundle up your solution (whether that takes the form of an application, website, database, server, or something else) and send out tiny images of that solution to deal with clusters of data. These, of course, would be containers, and they're the workforce of the cloud. They're the little solution factories you send out to handle service requests, and because you can spawn as many as you need based on the requests coming in at any given time, they're theoretically inexhaustible.

Linux Containers What are Linux containers? What is Kubernetes? Free online course: Containers, Kubernetes and Red Hat OpenShift technical over… eBook: A guide to Kubernetes for SREs and sysadmins Free online course: Running containers with Red Hat technical overview eBook: Storage patterns for Kubernetes Containers at home

If you don't have a lot of incoming requests to deal with, you might wonder what benefit containers offer to you. Using containers on a personal computer does have its uses, though.

[ Download our new guide: Containers and pods 101 eBook ]

Containers as virtual environments

With tools like Podman, LXC, and Docker, you can run containers the same way you might have historically run virtual machines. Unlike a virtual machine, though, containers don't require the overhead of emulated firmware and hardware.

You can download container images from public repositories, launch a minimalist Linux environment, and use it as a testing ground for commands or development. For instance, say you want to try an application you're building on Slackware Linux. First, search for a suitable image in the repository:

$ podman search slackware

Then select an image to use as the basis for your container:

$ podman run -it --name slackware vbatts/slackware
sh-4.3# grep -i ^NAME\= /etc/os-release
NAME=SlackwareContainers at work

Of course, containers aren't just minimal virtual machines. They can be highly specific solutions for very specific requirements. If you're new to containers, it might help to start with one of the most common rites of passage for any new sysadmin: Starting up your first web server but in a container.

First, obtain an image. You can search for your favorite distribution using the podman search command or just search for your favorite httpd server. When using containers, I tend to trust the same distributions I trust on bare metal.

Once you've found an image to base your container on, you can run your image. However, as the term suggests, a container is contained, so if you just launch a container, you won't be able to reach the standard HTTP port. You can use the -p option to map a container port to a standard networking port:

$ podman run -it -p 8080:80 docker.io/fedora/apache:latest

Now take a look at port 8080 on your localhost:

$ curl localhost:8080
Apache

Success.

Learn more

Containers hold much more potential than just mimicking virtual machines. You can group them in pods, construct automated deployments of complex applications, launch redundant services to account for high demand, and more. If you're just starting with containers, you can download our latest eBook to study up on the technology and even learn to create a pod so you can run WordPress and a database.

Start exploring the essentials of container technology with this new downloadable guide.

Image by:

opensource.com

Containers Kubernetes What to read next This work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License. Register or Login to post a comment.

System76 Releases v1.1 Scheduler For Optimizing Linux Desktop/Laptop Responsiveness

Phoronix - Thu, 05/05/2022 - 06:42
System76 has released a new version of the System76-Scheduler, it's Rust-written CPU scheduler designed to improve desktop responsiveness on their Pop!_OS Linux distribution...

Mesa 22.1-rc4 Released With More Zink + Kopper Fixes

Phoronix - Thu, 05/05/2022 - 03:00
Another week of fixes and backports have collected for Mesa 22.1 and now available for testing in the form of Mesa 22.1-rc4...

Microsoft 3D Movie Maker Released As Open-Source

Phoronix - Thu, 05/05/2022 - 01:14
Microsoft has made public the source code to the original Microsoft 3D Movie Maker software...

Pages