70 lines
2.2 KiB
Markdown
70 lines
2.2 KiB
Markdown
# MCPO Project
|
|
|
|
This repository contains the source code, configuration files, and deployment instructions for a project that uses Docker, Kubernetes, and the `mcpo` tool to manage mulitiple MCP (Multi-Component Protocol) service.
|
|
|
|
## Overview
|
|
|
|
The project sets up:
|
|
- A Docker container running the `mcpo` tool with configuration from `mcpo_config.json`
|
|
- A Kubernetes deployment for the Gitea MCP application
|
|
- Services and pods to manage the application's networking and lifecycle
|
|
|
|
## Key Components
|
|
|
|
### Docker
|
|
- **Dockerfile**: Builds a container with Python dependencies and the `mcpo` tool
|
|
- **gitea_mcp_set.sh**: Script to configure gitea_mcp in the container environment
|
|
- **requirements.txt**: Python dependencies for any script-based components
|
|
|
|
### Kubernetes
|
|
- **kube/deployment.yaml**: Defines the Kubernetes deployment for the Gitea MCP application
|
|
- **kube/pod.yaml**: Pod specification for the container
|
|
- **kube/service.yaml**: Service configuration to expose the application
|
|
|
|
### Configuration
|
|
- **mcpo_config.json**: Main configuration file for the `mcpo` tool, containing:
|
|
- MCP server settings
|
|
- Authentication credentials
|
|
- API endpoints
|
|
|
|
## Purpose
|
|
|
|
This project provides a complete environment to:
|
|
1. Run the mpco service using containerization
|
|
2. Orchestrate the service using Kubernetes
|
|
3. Manage configuration and authentication securely
|
|
|
|
## Setup Instructions
|
|
|
|
1. **Clone the repository**:
|
|
```bash
|
|
git clone [repository-url]
|
|
```
|
|
|
|
2. **Build the Docker image**:
|
|
```bash
|
|
docker build -t gitea-mcp:latest .
|
|
```
|
|
|
|
3. **Apply Kubernetes configurations**:
|
|
```bash
|
|
kubectl apply -f kube/
|
|
```
|
|
|
|
4. **Verify the deployment**:
|
|
```bash
|
|
kubectl get pods -n gitea-mcp
|
|
kubectl get services -n gitea-mcp
|
|
```
|
|
|
|
5. **Test the service**:
|
|
- Ensure the service is accessible through the NodePort (30026)
|
|
- Verify the MCP servers are configured correctly
|
|
|
|
## Notes
|
|
- The `mcpo` tool is used to manage MCP connections
|
|
- The configuration file contains sensitive information (access tokens, Bearer tokens)
|
|
- The project is designed for production deployment with Kubernetes orchestration
|
|
|
|
For detailed explanations of individual components, refer to their respective files in the repository.
|