Building a Jenkins CI/CD Pipeline with Docker: A Practical Guide