feat: migrate to VitePress from monorepo docs, add test-contour section

This commit is contained in:
sova-bootstrap
2026-05-28 12:29:31 +03:00
parent e90dfe1bd4
commit e3e438df68
76 changed files with 11998 additions and 60 deletions
+73
View File
@@ -0,0 +1,73 @@
# Docker Compose
Compose-конфигурация разделена на несколько файлов в `environments`.
## Файлы
- `docker-compose.networks.yml` - `public-network` и `internal-network`.
- `docker-compose.dbs.yml` - PostgreSQL и Redis.
- `docker-compose.apps.yml` - nginx, `php84`, `php82`, `nextjs`.
- `docker-compose.dev.yml` - Node.js helper-контейнер для разработки frontend-приложений.
- `docker-compose.monitoring.yml` - node-exporter, php-fpm-exporter, Prometheus, Grafana.
- `docker-compose.jenkins.yml` - Jenkins.
## Make targets
```bash
make help
```
Основные цели:
- `make dev` - dev-режим без мониторинга;
- `make up` - prod-режим с мониторингом;
- `make down` - остановка сервисов;
- `make restart` - остановка и повторный запуск;
- `make clean` - остановка и удаление volumes;
- `make prune` - полная очистка Docker;
- `make chown-up` - выставить владельцев для мониторинга и PostgreSQL data;
- `make chown-1000` - вернуть владельца `1000:1000`;
- `make fix-certs` - поправить права сертификатов nginx;
- `make rebuild-nextjs` - пересобрать и перезапустить Next.js-контейнер.
## Ручной запуск compose
Эквивалент `make dev`:
```bash
COMPOSE_PROJECT_ENV=dev COMPOSE_NODE_ENV=development \
docker compose --env-file .env \
-f environments/docker-compose.networks.yml \
-f environments/docker-compose.dbs.yml \
-f environments/docker-compose.apps.yml \
-f environments/docker-compose.dev.yml \
up -d
```
Эквивалент `make up`:
```bash
COMPOSE_PROJECT_ENV=prod COMPOSE_NODE_ENV=production \
docker compose --env-file .env \
-f environments/docker-compose.networks.yml \
-f environments/docker-compose.dbs.yml \
-f environments/docker-compose.apps.yml \
-f environments/docker-compose.dev.yml \
-f environments/docker-compose.monitoring.yml \
up -d
```
## Порты
- `80`, `443` - nginx.
- `5432` - PostgreSQL.
- `3001` - Next.js `sovamed`.
- `3000` - Grafana.
- `9090` - Prometheus.
- `8080`, `50000` - Jenkins.
## Volumes и данные
PostgreSQL хранит данные в `infrastructure/pgsql/data`, Redis - в `infrastructure/redis/data`. Эти директории игнорируются git и не должны удаляться без необходимости.
`make clean` удаляет docker volumes, а `make prune` чистит Docker глобально на машине.