booking-microservices-expressjs

(β˜… 294)

Practical microservices, built with Node.Js, CQRS, Vertical Slice Architecture, Event-Driven Architecture, Postgres, RabbitMQ, Express and the latest technologies.

  • .env.example
  • .gitignore
  • booking.rest
  • CONTRIBUTION.md
  • docker-compose.yml
  • LICENSE
  • README.md

# Installation Guide

1. Get the code
git clone https://github.com/meysamhadeli/booking-microservices-expressjs

Downloads the entire project code from GitHub to your computer.

cd booking-microservices-expressjs

Moves into the project folder you just downloaded.

2. Docker

Easy Recommended
Prerequisites
  • Git Needed to download the project code from GitHub.
  • Docker Desktop Needed to build and run containers. Install it and keep it running in the background.
docker compose up -d --build

Builds and starts all defined containers (server, database, etc.) at once, in the background.

docker compose ps

Runs the command against the services defined in the compose file.

docker compose logs -f

Runs the command against the services defined in the compose file.

docker compose down

Runs the command against the services defined in the compose file.

docker build -t booking-microservices-expressjs-identity:latest -f src/identity/Dockerfile src

Builds a runnable image based on the Dockerfile.

βœ… Run docker compose ps to check the containers are Up. If the README mentions a port, open http://localhost:PORT in your browser.

Pulled directly from this repo's README.

3. Node.js

Easy
Prerequisites
  • Git Needed to download the project code from GitHub.
  • Node.js Node.js must be installed to use npm. The LTS version is recommended.
npm run migration:generate -- src/data/migrations/new-migration-name

Type this command into your terminal and run it.

npm run migration:run

Type this command into your terminal and run it.

npm run build

Builds optimized production files.

npm run dev

Starts the development/run server.

npm test

Type this command into your terminal and run it.

βœ… After running the command, open the address shown in the terminal (usually something like http://localhost:3000) in your browser.

Pulled directly from this repo's README.

// repository documentation