Multimedia and file streaming over local network using Ubuntu Server. This home server is powered entirely by free and open-source software, including Ubuntu Server, Docker, CasaOS, Jellyfin, and Crafty Controller.
Description: This project demonstrates Linux system administration, virtualization/container management, networking, and self-hosted services. The server is designed to provide media streaming, centralized file storage, and multiplayer game hosting over a local network while relying entirely on free and open-source software.
Wanting better control over my files and media, I decided to build this server using resources I had available to me. On top of hosting my personal files, movies, music, and even my own Minecraft server, I ended up also strengthening my skills with Linux-based systems, network configuration, and container management on Docker. Throughout the project, I gained hands-on experience deploying services, troubleshooting configuration issues, managing storage and permissions, and maintaining a reliable environment for media streaming and game hosting. These experiences strengthened my understanding of open-source technologies and collaborative software ecosystems, which motivated me to continue exploring Linux and community-driven software development.
- Media streaming with Jellyfin
- Network file sharing
- Remote administration through SSH
- Docker container management using CasaOS
- Minecraft server hosting with Crafty Controller
- External SSD storage for media and backups
- Lightweight, low-power hardware platform
| Component | Specification |
|---|---|
| CPU | Intel Core i5-8265U |
| RAM | 16 GB DDR4-2400 |
| Internal Storage | 256 GB NVMe SSD |
| External Storage | 1 TB SSD |
| Software | Purpose |
|---|---|
| Ubuntu Server | Operating System |
| Linux Kernel | System Kernel |
| CasaOS | Container management interface |
| Docker | Container runtime |
| Jellyfin | Media server |
| Crafty Controller | Minecraft server management |
| OpenSSH | Remote administration |
| Samba file sharing |
- Linux administration
- Command-line interface (CLI)
- Docker containers
- SSH configuration
- Linux permissions
- Storage management
- Filesystem mounting
- Network services
- Self-hosted infrastructure
- Troubleshooting and debugging
- Configuring External SSD Permissions - SOLVED
- resolving Jellyfin library access issues - SOLVED
- configuring Samba file sharing - SOLVED
What I learned: Linux Permissions, Mount Points
- HTTPS configuration
- Domain name
- Reverse Proxy
- Pi-hole
- VPN access
- GitHub Actions for configuration backups