Local Development Setup
This guide provides instructions for setting up cvhome
to run on your local machine. There are two primary methods:
- Quick Start with Docker Compose: The fastest way to run locally, ideal for demos.
- Full Development Setup: Setting up the required tools (Java, Gradle, Node.js), building and running all services manually. good for core development and debugging.
Quick Start with Docker Compose
Prerequisites
- Docker & Docker Compose
- curl
Steps
Setup & Download: Execute this command in your terminal:
bashcurl -sSL https://raw.githubusercontent.com/cvhome-saas/assets/refs/heads/main/fast-run/fast-run.sh | sudo bash
Wait: ~5-10 minutes to download and run docker images.
Access:
- http://store-ui.gateway.com:8000 (
org1-admin@mail.com/admin
) or (org2-admin@mail.com/admin
) - http://org1-store1.store-pod-saas-gateway-1.gateway.com:8100
- http://org1-store2.store-pod-saas-gateway-1.gateway.com:8100
- http://org2-store1.store-pod-saas-gateway-1.gateway.com:8100
- http://org2-store2.store-pod-saas-gateway-1.gateway.com:8100
- http://store-ui.gateway.com:8000 (
Full Development Setup
Prerequisites
- Git
- JDK 23
- Gradle 8
- Node.js 20.x
- Docker & Docker Compose
Steps
Clone the Repository:
bashgit clone https://github.com/cvhome-saas/cvhome.git
Configure hosts:
bashsudo bash extra/scripts/configure-domain.sh
Build the Code: this will download the mvn dependencies
bash./gradlew clean build -x test
Launch required Resources: this will run required resources before run the main project like ( rabbitmq,postgres,keycloak,caddy,minio,mailcatcher)
bashdocker compose -f docker-compose-lcl.yml up -d
Running all Microservices: this will run all microservices (6 java , 3 angular , 1 Next.js) in the project (Note: This project's Gradle setup is configured to launch all service types (Java, Angular, Next.js) via
bootRun
)bash./gradlew bootRun --args='--spring.profiles.active=lcl'
Wait: ~2-3 minutes for services to start.
Access:
- http://store-ui.gateway.com:8000 (
org1-admin@mail.com/admin
) or (org2-admin@mail.com/admin
) - http://org1-store1.store-pod-saas-gateway-1.gateway.com:8100
- http://org1-store2.store-pod-saas-gateway-1.gateway.com:8100
- http://org2-store1.store-pod-saas-gateway-1.gateway.com:8100
- http://org2-store2.store-pod-saas-gateway-1.gateway.com:8100
- http://store-ui.gateway.com:8000 (
Development: Now you can start development using your IDE (IntelliJ, VS Code, Eclipse)
- make sure to use dev profile like
spring.profiles.active=dev
- make sure to use dev profile like