Fast-Track Wowza Streaming Engine Deployment with Docker

I recently had the pleasure of hosting a webinar with our principal video engineer, Ian Zenoni, to dive deep into a topic that is transforming how we deploy streaming infrastructure: Docker. While Docker support isn’t new to Wowza, we are getting really, really good at it, and the benefits are remarkable. If you are not using Docker, or if you feel a bit of “imposter syndrome” when looking at containerization, you are not alone. I admitted to the same during the session. See just how fast and flexible this approach can be in our webinar.

This blog recaps the key takeaways Ian and I discussed, from our new optimized container structure to ARM architecture support. For the detailed step-by-step walkthrough, I highly encourage you to watch the full VOD.

Consistent, Cross-Device Compatibility with Docker Containers

One of the oldest adages in software is “well, it works on my machine.” As Ian explained, Docker solves this by creating a self-contained environment that includes everything you need: Java, Wowza Streaming Engine, and the OS kernel.

From my perspective as a Sales Engineer, the real game-changer is speed. If you have ever destroyed a Linux instance on AWS EC2 and had to spend 20 to 30 minutes rebuilding it from scratch, you know what I’m talking about. With Docker, if you “blow up” your configuration or make a critical syntax error, you can kill the container and bring it back up in seconds. You can focus on your streaming objectives, not managing an operating system.

Wowza Streaming Engine’s Enhanced Docker Containers

We’ve made significant changes to our container offerings on Docker Hub. We’ve moved away from our legacy containers, which were admittedly heavy and bundled everything together, toward a more modern and efficient architecture.

  • Split Architecture
    We split Wowza Streaming Engine (WSE) and Wowza Streaming Engine Manager (WSEM) into two separate containers. This follows the Docker philosophy of running one process per container, keeping your deployments lightweight.
  • Native ARM Support
    Our new containers include native support for ARM processors. This is critical for anyone looking to run on Apple Silicon or deploy on AWS Graviton instances, which can be 15-20% cheaper than x86 instances.

Demos of Wowza Streaming Engine and Docker

During the webinar, Ian used a docker-compose file to show just how easy it is to manage these environments. We looked at the specific “Trial” version of our container, which comes pre-configured with SSL certificates and applications, allowing you to get to a “Hello World” stream up and running almost instantly.

One of my favorite features that we demoed was the ability to swap versions on the fly. If you need to test a specific feature or validate a change, you can switch from Engine version 4.9.6 to 4.9.4 just by changing one line in the config file and restarting. This is incredibly powerful for change management and testing upgrades. Avoid the headache of uninstalling and reinstalling software.

Using Volumes to Preserve Docker Data

A common concern with Docker is that, if you shut it down, you lose your data. Ian showed us how to use Volumes to map local directories (like your conf, lib, or content folders) into the Docker container. This is a tactic I use extensively for demos.

I often spend time building highly-optimized transcoding workflows or WebRTC setups. With Volumes, I can save that configuration locally and then spin it up instantly whenever I need it. So, while the container is disposable, your hard work and configurations are preserved.

Achieving Production Scale Through GPUs And Orchestration

Finally, we touched on the fact that Docker isn’t just a valuable tool for testing. It’s also a robust solution for production.

  • GPU Access
    To address the wall between containers and hardware, you can add a simple runtime: nvidia command to the compose file, you can pass GPU resources through to the container for hardware-accelerated transcoding.
  • Kubernetes (K8s)
    For high-traffic scaling, these containers are designed for orchestration. They support “liveness probes” that allow Kubernetes to monitor the health of a Wowza Streaming Engine instance and automatically kill and rebuild it if it becomes unresponsive. Ian noted that this is the exact architecture that powers our own platform.

Whether you are building a massive deployment on Kubernetes or just want a faster way to test on your local laptop, Docker provides the efficiency you need. Check your images and make sure you are using the new split repositories, not the legacy ones. Download our docker-compose file to see how quickly you can get up and running.

For the full technical breakdown, including Ian’s demo of the configuration files, watch the full webinar VOD here. If you want to discuss how to modernize your specific workflow, please don’t hesitate to contact us.

About Tim Dougherty

Tim Dougherty is Wowza’s director of sales engineering. A user technology expert with more than 20 years of experience in IT, network administration, video production, and project/program management, Tim helps customers visualize and integrate effective streaming media solutions. With a passion for efficiency and practicality, Tim’s goal is to excite people about video streaming, help them leverage Wowza technology, and enable them to successfully use video as part of their overall business strategy.
View More

FREE TRIAL

Live stream and Video On Demand for the web, apps, and onto any device. Get started in minutes.

START STREAMING!
  • Stream with WebRTC, HLS and MPEG-DASH
  • Fully customizable with REST and Java APIs
  • Integrate and embed into your apps

Search Wowza Resources


Subscribe


Follow Us


Categories

Blog

Back to All Posts