Welcome to the SaaS Project! This repository contains the source code and configuration for running the application locally using Docker, Minikube, and Skaffold.
Ensure the following tools are installed on your system:
- Docker (v20.10 or later)
- Minikube (v1.25 or later)
- Skaffold (v2.0 or later)
Follow these steps to set up the development environment.
Docker is used to containerize the application.
- Windows/Mac: Install Docker Desktop.
- Linux:
sudo apt-get update
sudo apt-get install -y docker.io
sudo systemctl start docker
sudo systemctl enable docker- Verify Installation:
docker --versionMinikube runs a local Kubernetes cluster.
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube- Start Minikube:
minikube start- Verify Installation:
minikube versionSkaffold streamlines the development workflow.
curl -Lo skaffold https://storage.googleapis.com/skaffold/releases/latest/skaffold-linux-amd64
sudo install skaffold /usr/local/bin/- Verify Installation:
skaffold versiongit clone https://github.com/codewithjoe-tech/Backend-Adome.git
cd BackendAdomeminikube startUse Skaffold to build, deploy, and watch for changes:
skaffold dev- Skaffold will display the application URL (e.g.,
http://localhost:<port>). - Alternatively, find the service URL:
minikube service <service-name> --urlReplace
<service-name>with the name defined in your Kubernetes manifests.
- Docker issues: Ensure Docker is running →
docker info - Minikube issues: Check with →
minikube statusRestart if needed →minikube stop && minikube start - Skaffold issues: Validate
skaffold.yaml, Dockerfiles, and Kubernetes manifests. - Resource constraints: Allocate more CPU/memory to Docker and Minikube.
For verbose logs:
skaffold dev --verbosity=debugTo stop the application:
Ctrl + C
minikube stopContributions are welcome! Please follow these steps:
-
Fork the repository.
-
Create a feature branch:
git checkout -b feature/your-feature
-
Commit your changes:
git commit -m 'Add your feature' -
Push to the branch:
git push origin feature/your-feature
-
Open a pull request.
This project is licensed under the MIT License.
Let me know if you want this customized for your actual GitHub repo name, service names, or have CI/CD instructions too.