CI/CD Dockerized Node.js Application

This project is a simple Node.js application that is containerized using Docker and managed with Git and GitHub. It is designed to understand how applications are prepared for CI/CD workflows.

Project Overview

The main goal of this project is to learn the basics of DevOps by combining application development, containerization, and version control.

In this project:

  • A simple Node.js web server is created using Express
  • The application is containerized using Docker
  • Docker images are built and run locally
  • Source code is managed using Git
  • The project is hosted on GitHub and structured for CI/CD readiness

Technologies Used

  • Node.js
  • Express.js
  • Docker
  • Git
  • GitHub

Project Structure

cicd-project
|-- app
| |-- server.js
| |-- package.json
| |-- package-lock.json
|-- Dockerfile
|-- README.md

How It Works

  1. The Node.js application runs a simple web server on port 3000.
  2. The Dockerfile defines how the application is containerized.
  3. A Docker image is built locally from the Dockerfile.
  4. The container runs the application inside Docker.
  5. The project can later be extended with CI/CD pipelines.

Docker Setup

To build the Docker image locally: docker build -t demo-app .

To run the Docker container: docker run -p 3000:3000 demo-app

Open the browser and visit: http://localhost:3000

Notes

This project serves as a foundation for learning CI/CD concepts. GitHub Actions or other CI/CD tools can be added later to automate builds and deployments.

License

This project does not have a specific license.

Built With

Share this project:

Updates