Summary
This project documents the infrastructure used to host my professional portfolio website. Rather than relying on a managed hosting provider, the site runs on a self-managed virtualization platform built with Proxmox and shared Ceph storage. The project serves both as a portfolio platform and as a practical demonstration of systems administration, virtualization, and infrastructure management skills.
Problem
Most web hosting platforms abstract away the underlying infrastructure, making deployment simple but limiting exposure to the systems that keep services running. I wanted to build and maintain the complete hosting environment myself to gain hands-on experience with virtualization, storage, networking, and Linux administration.
Constraints
- Public-facing services must remain reliable
- Infrastructure must be manageable by a single administrator
- Storage should support future growth and flexibility
- Updates and maintenance should be repeatable
- Security and backup procedures must be maintained
- Resources should be used efficiently
Approach
The portfolio website is built using Astro and hosted inside a Linux container running on a Proxmox virtualization cluster. Storage is provided through Ceph, allowing services and data to reside on shared distributed storage rather than a single server.
The environment includes web server configuration, DNS management, HTTPS certificate management, backups, system updates, and ongoing maintenance. The goal was to create a stable platform while gaining practical experience operating the infrastructure that supports it.
Tools & Technologies
- Proxmox Virtual Environment
- Ceph Distributed Storage
- Linux Containers (LXC)
- Astro Static Site Generator
- Nginx Web Server
- Git Version Control
- DNS Management
- HTTPS / SSL Certificates
Outcome
The result is a self-hosted portfolio platform running on infrastructure that I deploy, manage, and maintain. Beyond serving the website itself, the project provides hands-on experience with virtualization, storage management, Linux administration, troubleshooting, and long-term operational support.
Lessons Learned
The website is only a small part of the project. Most of the work involves maintaining the underlying infrastructure, including storage, networking, updates, backups, and recovery planning. Operating the environment has reinforced the importance of documentation, monitoring, and designing systems that are simple to maintain over time.