As part of the DevOps Micro Internship (DMI) Cohort-2, I completed an assignment focused on applying Git, GitHub, and Linux deployment workflows by building and versioning a small project and deploying it to a live AWS EC2 server.
I set up a local Git repository, staged files, wrote meaningful commit messages, and pushed changes to a remote GitHub repository. I then deployed the same versioned code to an Amazon Linux EC2 instance using Nginx to serve static content.
During deployment, I installed and managed Nginx, handled file ownership and permissions, and ensured the site was served correctly from the Nginx web root. I identified differences between Amazon Linux and Ubuntu Nginx defaults and resolved 403 Forbidden errors by correcting permissions and verifying configuration files.
Key takeaways:
Git provides version history and supports controlled deployments
GitHub enables remote code storage and collaboration
Nginx requires correct paths and permissions to serve static files
OS-specific defaults affect server configuration
Logs and Linux permissions are required for troubleshooting
Live application: http://44.223.39.197
This work covered Git version control, static website deployment, Linux server administration, and AWS EC2 operations.
Thanks to Pravin Mishra, Lead Co-Mentor Praveen Pandey, and co-mentors Onuche Paul, Abhishek Makwana , and Mobarak Hosen for guidance.
P.S. This post is part of the DevOps Micro Internship (DMI) Cohort-2 by Pravin Mishra. Discord community: https://lnkd.in/dBWEZfBZ
📸 Screenshot of the live deployment attached.
Top comments (0)