38 lines
1.8 KiB
Markdown
38 lines
1.8 KiB
Markdown
# AGENTS.md - JMP Server Infrastructure
|
|
|
|
## Project Overview
|
|
JMP Server is a Docker Compose-based infrastructure deployment for self-hosted services. It contains a reverse proxy, Git repository hosting, documentation platform, and cloud storage.
|
|
|
|
## Architecture & Services
|
|
- **Traefik**: Reverse proxy and load balancer (v3.6.6), handles routing and HTTPS/TLS
|
|
- **Gitea**: Git repository hosting with PostgreSQL backend and CI/CD runner support
|
|
- **Bookstack**: Documentation wiki with MariaDB backend
|
|
- **Homepage**: Dashboard for service discovery and monitoring
|
|
- **OpenCloud**: Nextcloud-based cloud storage with full compose stack included
|
|
- **Website**: Frontend web application (in `after` profile)
|
|
|
|
## Build & Deployment Commands
|
|
- Start all services: `./start.sh` or `docker compose up -d`
|
|
- Stop all services: `./stop.sh` or `docker compose down`
|
|
- Start OpenCloud only: `docker compose -f opencloud-compose/docker-compose.yml up -d`
|
|
- View logs: `docker compose logs -f [service_name]`
|
|
|
|
## Key Configuration Files
|
|
- `docker-compose.yaml`: Main service definitions with Docker networking
|
|
- `.env`: Environment variables (secrets not tracked)
|
|
- `config.yml`: Gitea runner configuration
|
|
- `traefik.yml`: Traefik routing and middleware setup
|
|
- `opencloud-compose/.env.example`: OpenCloud environment template
|
|
|
|
## Important Databases
|
|
- **Gitea DB**: PostgreSQL (port internal)
|
|
- **Bookstack DB**: MariaDB (port internal)
|
|
- All databases stored in local volume mounts (`./gitea/db`, `./bookstack/db`, `./opencloud/data`)
|
|
|
|
## Code Style & Conventions
|
|
- Infrastructure-as-Code in YAML
|
|
- Docker container configuration via environment variables
|
|
- Traefik labels for service discovery and routing rules
|
|
- Use `${VARIABLE}` syntax for .env substitution
|
|
- Homepage labels for dashboard integration
|