Overview
This project focused on using Ansible to prepare a clean Linux system for running Plex in Docker with hardware transcoding enabled.
It also required learning Fedora 42, since most of my prior automation and server work had been on Debian-based systems.
What I built
- Ansible playbooks to:
- Install Docker and dependencies
- Configure system packages and updates
- Prepare permissions and storage paths
- Host setup for:
- Hardware transcoding passthrough
- GPU device access inside containers
- Docker-based Plex deployment using consistent, repeatable configuration
Learning Fedora
Fedora introduced differences in:
- Package management
- SELinux behavior
- System defaults compared to Debian
This required adapting playbooks and understanding:
- Security contexts
- Device permissions
- Service management differences
Challenges
- Getting hardware devices visible inside containers
- Handling SELinux restrictions
- Making the setup repeatable through automation rather than manual steps
Why it matters
Automation should not depend on a single distribution.
This project shows how infrastructure practices can:
- adapt to new environments,
- remain consistent across platforms, and
- support real workloads like media serving with hardware acceleration.