DigitalOcean Self-Hosted Server
I deployed and configured a production-ready DigitalOcean server to host my portfolio and related web projects, with an emphasis on reliability, security, maintainability, and long-term operational visibility.
Problem
I needed a dependable hosting environment that gave me more control than shared hosting while remaining affordable and manageable for solo administration. Beyond simply hosting websites, I wanted an environment that supported multi-site management, documentation, monitoring, and security best practices.
Constraints
The setup needed to remain cost-conscious, support PHP and nginx cleanly, be manageable without a full operations team, and provide a secure and maintainable foundation for multiple websites and future expansion.
Approach
I provisioned a DigitalOcean droplet and built out a web hosting environment designed for practical day-to-day use. I used CloudPanel for multi-site management, configured domain and SSL support, documented the server and site setup in BookStack, and added monitoring and alerting tools to improve visibility into uptime and maintenance needs. I also hardened the server with Fail2ban to reduce unwanted bot traffic and basic attack attempts.
What I Built
- Provisioned and configured a DigitalOcean droplet for hosting web applications.
- Set up CloudPanel for multi-site server and domain management.
- Connected domain and DNS records for public access to hosted sites.
- Configured nginx, PHP, and site-level vhost settings for application hosting and routing.
- Configured SSL/TLS so hosted sites could be served securely over HTTPS.
- Implemented a server and site documentation wiki using BookStack as the documentation platform.
- Set up Uptime Kuma for service and uptime monitoring.
- Set up Gotify for operational notifications and server maintenance alerts.
- Implemented Fail2ban to reduce unwanted bot traffic and lock out repeated malicious access attempts.
- Organized project directories and application files for maintainability and future expansion.
- Tested routing behavior and debugged server configuration issues to support clean project URLs.
Outcome
The result is a stable self-managed cloud hosting environment that successfully serves my portfolio and related projects while also supporting operational documentation, monitoring, notifications, and basic security hardening. It provides full control over deployment and infrastructure decisions while staying lightweight and affordable.
Why It Matters
This project demonstrates that I can work beyond front-end implementation and manage the practical infrastructure behind live applications. It shows experience with cloud server provisioning, multi-site hosting, DNS and HTTPS setup, server documentation, monitoring, alerting, and defensive security measures in a real production environment.
Gallery



