π My 3-Day Hackathon Journey: Building a CI/CD Pipeline from Scratch
Last week, I joined Chattingo Mini-Hackathon, and my goal was pretty ambitious:
build a complete CI/CD pipeline from scratch.
The idea was simple on paper but tough in practice β I wanted an automated workflow that could build, test, and deploy apps straight to production using Docker, Jenkins, and Nginx on a VPS.
Hereβs how the three days went π
π οΈ Day 1: Setting the Foundation (Docker + VPS)
Day 1 was all about getting the basics in place.
- I started by containerizing the app with Docker so it would run the same everywhere.
- Then I spun up a VPS, set up SSH, and tightened it up with some firewall rules.
- Finally, I installed all the necessary tools and dependencies.
By the end of the day, I had a stable environment ready for automation. It felt like laying down bricks before building the house.
βοΈ Day 2: Building the Jenkins Pipeline
This was the most exciting day for me.
- I built a Jenkins pipeline with proper build, test, and deploy steps.
- Whenever I pushed code, Jenkins automatically built the Docker image, ran tests, and pushed everything live to production.
πΈ Hereβs the pipeline I ended up with:
Seeing my commits travel from Git β Docker β Production felt really satisfying.
β
Day 3: Testing in Production + Writing Docs
The last day was about making sure things actually worked in the real world.
- I rolled everything out in production and tested it end-to-end.
- A couple of small issues popped up, but I fixed them quickly.
- I wrapped it all up with documentation so anyone could repeat the setup.
And of course, I had to make a demo video to showcase the whole thing π₯
π What I Learned
In just three days, I walked away with hands-on experience in:
- Docker β packaging apps for consistency.
- Jenkins β building automated pipelines.
- VPS deployments β real-world app hosting and security.
- Documentation β because good projects should be repeatable.
By the end of the hackathon, I scored 34/40, which showed that the pipeline I built was robust and met most of the challenge requirements.
π Wrapping Up
This hackathon really showed me the power of combining automation, containerization, and CI/CD.
In just a weekend, I went from idea to a fully automated deployment pipeline.
Whatβs next?
Iβd love to take this further by adding:
- Kubernetes orchestration
- Monitoring with Prometheus/Grafana
- Auto-scaling for real-world traffic
π Honestly, this was one of the most fun and practical projects Iβve done so far. Learning Jenkins from scratch in just one day pushed me out of my comfort zone.