Case study · Infrastructure practice
Infrastructure & Virtualization Lab
Reproducible Linux environments for testing virtualization, deployment, access, HTTPS, persistence, backup, and full restoration.
Purpose
Important infrastructure changes should be understood before they reach production. The lab provides disposable, reproducible environments for learning service behavior, testing deployment workflows, creating failures intentionally, and proving recovery.
Environment
The practice environment uses KVM virtual machines, Linux guests, Docker workloads, local and public-style domain routing, Nginx, HTTPS, Git-based tooling, and backup locations separated from the active service.
Exercises
- Provision clean Ubuntu and Debian virtual machines.
- Compare native and container deployment behavior.
- Troubleshoot user, SSH, firewall, port, DNS, and service access.
- Configure reverse proxies and HTTPS.
- Verify service restart and persistence after reboot.
- Create database and file backups.
- Restore into controlled environments and verify the recovered application.
Verification model
Each exercise distinguishes configuration from evidence. A service is not considered ready only because installation returned successfully; ports, processes, routes, certificates, persistent storage, and user access are checked independently.
Result
The lab supports safer development of the ERPNext Developer Toolkit and provides repeatable evidence for documentation, hardening, backup, restoration, and deployment decisions.
Lesson
Recovery confidence comes from repeated restoration and verification—not from the existence of a backup file.