booking-microservices-nestjs
Practical microservices, built with Nestjs, CQRS, Vertical Slice Architecture, Event-Driven Architecture, Postgres, RabbitMQ and the latest technologies.
파일 탐색기
최종 버전 다운로드 (.zip)- ci.yml
- release-drafter-labeler.yml
- release-drafter.yml
- booking-microservices.excalidraw
- booking-microservices.png
- booking.png
- logo.png
- vertical-slice-architecture.excalidraw
- vertical-slice-architecture.png
- postgresql.json
- dashboard.yml
- datasource.yml
- grafana.ini
- init-postgres.sql
- loki-config.yaml
- otel-collector-config.yaml
- prometheus.yaml
- tempo.yaml
- docker-compose.yaml
- infrastructure.yaml
- booking.dto.ts
- booking.entity.ts
- create-booking.ts
- flight.client.ts
- passenger-client.ts
- booking.module.ts
- mappings.ts
- 1702506382196-create-booking-table.ts
- booking.repository.ts
- data-source.ts
- readme.md
- app.module.ts
- main.ts
- .env.development
- .env.docker
- .gitignore
- .prettierignore
- .prettierrc
- Dockerfile
- eslint.config.mjs
- nest-cli.json
- package.json
- tsconfig.json
- configs.d.ts
- configs.js
- configs.js.map
- configs.ts
- context.d.ts
- context.js
- context.js.map
- context.ts
- booking.contract.d.ts
- booking.contract.js
- booking.contract.js.map
- booking.contract.ts
- flight.contract.d.ts
- flight.contract.js
- flight.contract.js.map
- flight.contract.ts
- identity.contract.d.ts
- identity.contract.js
- identity.contract.js.map
- identity.contract.ts
- passenger.contract.d.ts
- passenger.contract.js
- passenger.contract.js.map
- passenger.contract.ts
- error-handlers.filter.d.ts
- error-handlers.filter.js
- error-handlers.filter.js.map
- error-handlers.filter.ts
- prometheus.metrics.d.ts
- prometheus.metrics.js
- prometheus.metrics.js.map
- prometheus.metrics.ts
- request-counter.middleware.d.ts
- request-counter.middleware.js
- request-counter.middleware.js.map
- request-counter.middleware.ts
- request-duration.middleware.d.ts
- request-duration.middleware.js
- request-duration.middleware.js.map
- request-duration.middleware.ts
- opentelemetry.module.d.ts
- opentelemetry.module.js
- opentelemetry.module.js.map
- opentelemetry.module.ts
- otel-diagnostics-provider.d.ts
- otel-diagnostics-provider.js
- otel-diagnostics-provider.js.map
- otel-diagnostics-provider.ts
- otel-logger.d.ts
- otel-logger.js
- otel-logger.js.map
- otel-logger.ts
- jwt.guard.d.ts
- jwt.guard.js
- jwt.guard.js.map
- jwt.guard.ts
- jwt.strategy.d.ts
- jwt.strategy.js
- jwt.strategy.js.map
- jwt.strategy.ts
- rabbitmq-connection.d.ts
- rabbitmq-connection.js
- rabbitmq-connection.js.map
- rabbitmq-connection.ts
- rabbitmq-publisher.d.ts
- rabbitmq-publisher.js
- rabbitmq-publisher.js.map
- rabbitmq-publisher.ts
- rabbitmq-subscriber.d.ts
- rabbitmq-subscriber.js
- rabbitmq-subscriber.js.map
- rabbitmq-subscriber.ts
- rabbitmq.module.d.ts
- rabbitmq.module.js
- rabbitmq.module.js.map
- rabbitmq.module.ts
- postgres-container.d.ts
- postgres-container.js
- postgres-container.js.map
- postgres-container.ts
- rabbitmq-container.d.ts
- rabbitmq-container.js
- rabbitmq-container.js.map
- rabbitmq-container.ts
- application.exception.d.ts
- application.exception.js
- application.exception.js.map
- application.exception.ts
- http-client.exception.d.ts
- http-client.exception.js
- http-client.exception.js.map
- http-client.exception.ts
- paged-result.d.ts
- paged-result.js
- paged-result.js.map
- paged-result.ts
- encryption.d.ts
- encryption.js
- encryption.js.map
- encryption.ts
- reflection.d.ts
- reflection.js
- reflection.js.map
- reflection.ts
- serialization.d.ts
- serialization.js
- serialization.js.map
- serialization.ts
- serilization.d.ts
- serilization.js
- serilization.js.map
- serilization.ts
- time.d.ts
- time.js
- time.js.map
- time.ts
- validation.d.ts
- validation.js
- validation.js.map
- validation.ts
- .editorconfig
- .gitignore
- .prettierignore
- .prettierrc
- eslint.config.mjs
- nest-cli.json
- package.json
- tsconfig.json
- aircraft.dto.ts
- aircraft.entity.ts
- create-aircraft.ts
- aircraft.module.ts
- mappings.ts
- airport.dto.ts
- airport.entity.ts
- create-airport.ts
- airport.module.ts
- mappings.ts
- 1702506607390-create-flight-table.ts
- aircraftRepository.ts
- airportRepository.ts
- flightRepository.ts
- seatRepository.ts
- data-seeder.ts
- data-source.ts
- readme.md
- flight.dto.ts
- flight.entity.ts
- flight-status.enum.ts
- create-flight.ts
- get-flight-by-id.ts
- flight.module.ts
- mappings.ts
- seat.dto.ts
- seat.entity.ts
- seat-class.enum.ts
- seat-type.enum.ts
- create-seat.ts
- get-available-seats.ts
- reserve-seat.ts
- mappings.ts
- seat.module.ts
- app.module.ts
- main.ts
- .env.development
- .env.docker
- .gitignore
- .prettierignore
- .prettierrc
- Dockerfile
- eslint.config.mjs
- nest-cli.json
- package.json
- tsconfig.json
- auth.dto.ts
- token.dto.ts
- token.entity.ts
- token-type.enum.ts
- generate-token.ts
- login.ts
- logout.ts
- refresh-token.ts
- validate-token.ts
- auth.module.ts
- mappings.ts
- 1735158168560-create-user-table.ts
- auth.repository.ts
- user.repository.ts
- data-seeder.ts
- data-source.ts
- readme.md
- user.dto.ts
- user.entity.ts
- role.enum.ts
- create-user.ts
- delete-user-by-id.ts
- get-user-by-id.ts
- get-users.ts
- update-user.ts
- mapping.ts
- user.module.ts
- app.module.ts
- main.ts
- create-user.test.ts
- create-user.test.ts
- fake-create-user-request.dto.ts
- fake-create-user.ts
- fake-user.entity.ts
- end-to-end.fixture.ts
- integration-test.fixture.ts
- create-user.test.ts
- .env.development
- .env.docker
- .env.test
- .gitignore
- .prettierignore
- .prettierrc
- Dockerfile
- eslint.config.mjs
- jest.config.ts
- nest-cli.json
- package.json
- tsconfig.json
- 1702506493124-create-passenger-table.ts
- passenger.repository.ts
- data-source.ts
- readme.md
- passenger.dto.ts
- passenger.entity.ts
- passenger-type.enum.ts
- get-passenger-by-id.ts
- get-passengers.ts
- mappings.ts
- passenger.module.ts
- create-user.ts
- app.module.ts
- main.ts
- .env.development
- .env.docker
- .gitignore
- .prettierignore
- .prettierrc
- Dockerfile
- eslint.config.mjs
- nest-cli.json
- package.json
- tsconfig.json
- .gitignore
- booking.rest
- CONTRIBUTION.md
- LICENSE
- README.md
# 설치 가이드
1. 코드 내려받기
git clone https://github.com/meysamhadeli/booking-microservices-nestjs
깃허브에서 프로젝트 코드 전체를 내 컴퓨터로 내려받습니다.
cd booking-microservices-nestjs
방금 내려받은 프로젝트 폴더 안으로 이동합니다.
2. Docker
쉬움 추천사전 준비물
- Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
- Docker Desktop 컨테이너를 빌드하고 실행하려면 필요합니다. 설치 후 실행해서 백그라운드에 켜두세요.
docker-compose -f ./deployments/docker-compose/infrastructure.yaml up -d
compose 설정 파일에 정의된 서비스들을 대상으로 명령을 실행합니다.
터미널에 docker compose ps 를 입력해 컨테이너들이 Up 상태인지 확인하세요. README에 포트 번호가 적혀있다면 브라우저에서 http://localhost:포트번호 로 접속해보세요.
이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.
3. Node.js
쉬움사전 준비물
npm run migration:generate -- src/data/migrations/new-migration-name
이 명령어를 터미널에 그대로 입력해 실행하세요.
npm run migration:run
이 명령어를 터미널에 그대로 입력해 실행하세요.
npm run build
배포용으로 코드를 최적화해서 빌드 파일을 생성합니다.
npm run dev
개발/실행 서버를 켭니다.
npm test
이 명령어를 터미널에 그대로 입력해 실행하세요.
명령어 실행 후 터미널에 나타나는 주소(보통 http://localhost:3000 형태)를 브라우저에서 열어보세요.
이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.
// repository documentation
Was this content helpful?
(0 ratings)
