.. | ||
docker | ||
k8s | ||
scripts | ||
README.md |
Protevus Platform DevOps
This directory contains Docker and Kubernetes configurations for the Protevus Platform. It is organized to support our containerization and orchestration needs across different environments.
Directory Structure
devops/
├── docker/
│ ├── Dockerfile
│ ├── docker-compose.yml
│ └── .dockerignore
├── kubernetes/
│ ├── deployment.yaml
│ ├── service.yaml
│ ├── ingress.yaml
│ └── configmap.yaml
├── scripts/
│ ├── docker-build.sh
│ ├── docker-push.sh
│ ├── k8s-deploy.sh
│ └── k8s-rollback.sh
└── README.md
docker/
This directory contains Docker-related files for building and running the Protevus Platform in containers.
Dockerfile
: Defines the container image for the Protevus Platform.docker-compose.yml
: Configures multi-container Docker applications for local development..dockerignore
: Specifies which files and directories should be excluded when building Docker images.
kubernetes/
The kubernetes/ directory houses Kubernetes manifests for deploying and managing the Protevus Platform in a Kubernetes cluster.
deployment.yaml
: Defines the deployment configuration for the Protevus Platform.service.yaml
: Specifies the service configuration for exposing the platform.ingress.yaml
: Configures ingress rules for routing external traffic to the service.configmap.yaml
: Stores configuration data that can be consumed by pods.
scripts/
This directory contains utility scripts for Docker and Kubernetes operations.
docker-build.sh
: Script for building Docker images.docker-push.sh
: Script for pushing Docker images to a registry.k8s-deploy.sh
: Script for deploying the application to a Kubernetes cluster.k8s-rollback.sh
: Script for rolling back a Kubernetes deployment.
Usage Guidelines
- Use the provided scripts in the
scripts/
directory for common Docker and Kubernetes operations. - Ensure all configuration files are properly parameterized for different environments (dev, staging, production).
- Keep sensitive information (like passwords and API keys) out of these files and use Kubernetes secrets instead.
- Regularly update and test these configurations as the Protevus Platform evolves.
Deployment Process
- Build the Docker image using
scripts/docker-build.sh
. - Push the image to the container registry with
scripts/docker-push.sh
. - Deploy to Kubernetes using
scripts/k8s-deploy.sh
. - If needed, rollback the deployment using
scripts/k8s-rollback.sh
.
Contributing
When contributing to the DevOps configurations:
- Test all changes thoroughly in a non-production environment before applying to production.
- Document any new scripts or significant changes to existing configurations.
- Follow Kubernetes and Docker best practices for security and efficiency.
- Submit a pull request with a clear description of the changes and their purpose.
For any questions or suggestions regarding the DevOps setup, please contact the Protevus Platform infrastructure team.